ugrás a tartalomhoz

Archívum - Júl 1, 2009

AJAX alkalmazás milyen vastag legyen VIEW tekintetében kliens oldalon

Max Logan · 2009. Júl. 1. (Sze), 00.06
Adott egy AJAX alapú webalkalmazás. Adott számos funkció melyeknél egy-egy formon keresztül lehet adatokat bevinni, módosítani.

Kérdés: a form előállítása szerver oldalon történjen, vagy kliens oldalon?

1. eset - kliens oldali form előállítás JS segítségével
  • Célszerű template jellegű helper függvényeket írni
  • View módosítása JS ismeretet igényel
  • Terjengős kód állítja elő a VIEW-t (lévén, hogy egy táblázaton belül vannak az input elemek -- bár ezen valamelyest segítenek a helper függvények)
  • Külön művelet a form feltöltése adatokkal (AJAX segítségével lekért adatok beillesztése a form-ba)
Előnye: A kliens felel teljes mértékben a VIEW-ért
Hátránya: Elég terjengős kód kell a VIEW előállításához


2. PHP oldalon generáljuk a teljes VIEW-t
  • Szerver oldalon meglévő VIEW és a hozzá kapcsolódó template rendszer, helperek alkalmazása a VIEW generálására (végkonyabb kliens)
  • A form előállításához szükséges DB műveletek egy lépésben zajlanak a VIEW előállításával, azaz a kliens kész VIEW-t kap
  • Kliens oldalon már csak az eseménykezelőket kell beállítani
Előnye:
- Szerver oldali VIEW kezelés használata
- Egyszerűbb kliens kód

Hátránya:
- Nem csak az adatok, hanem a markup is közlekedik AJAX segítségével a hálózaton
- (van még egy hátránya, de ez az én rendszerem miatt van, nem ide tartozó probléma)