pelmered |
2011-03-27 10:21 |
Citat:
Ursprungligen postat av dAEk
(Inlägg 20399727)
Låt servern svara med endast data eftersom:
det blir lättare att återanvända kod och du får bättre struktur i projektet. Låter du servern skicka med markup är du låst till t.ex en ul-lista om du nu returnerar en sån. I framtiden kanske samma data ska användas på en annan sida men märkas upp på ett annat sätt, och då vill man ju helst inte kopiera den gamla funktionen och ändra Html:n eller lägga in fula if-elses i den befintliga funktionen.
underhållsarbetet blir lättare. Ingen tycker om att leta efter och ändra Html-kod i server-kod.
|
I beg to differ.
Jag skulle säga att det är väldigt mycket enklare att få bra struktur på server side-genereringen än om man ska hantera massa logik med JavaScript. JavaScript-kod är i min mening mycket svårare att strukturera, felsöka och underhålla. Därför tycker jag inte man ska ha för mycket logik där om det inte finns en uppenbar vinst med det(vilket jag är osäker på att det finns i det här fallet).
Gör man dessutom någon form av template där man stoppar in datan får man bra struktur med separering av data och och markupen.
Citat:
Ursprungligen postat av dAEk
(Inlägg 20399727)
det blir mindre overhead i svaren. Svarar servern med markup och funktionen anropas 100 gånger skickas markuppen 99 gånger i onödan. Oftast är det här knappast ett problem men ändå. :)
Det blir lite mer jobb för webbläsarna men jag tycker att fördelarna är fler och väger tyngre än nackdelarna.
|
Jag tvivlar att på att det blir någon större skillnad på belastningen. Det som kostar prestanda är generellt sett att hämta datan från databasen(eller likande), inte att generera HTML-koden. Vid stora trafikvolymer är det väl nog endast på bandbreddsanvändningen som man skulle märka någon skillnad.
Med den här lösningen lägger du istället över mycket av beräkningarna på klienten så användare med långsammare datorer eller webbläsare med långsamma JavaScriptmotorer vilket mycket väl kommer ge en märkbar prestandaförsämring.
|