Hallo,

Stefan Frank schrieb:
Hallo Thorsten,

was Du erzählst deckt sich eingentlich ziemlich genau mit meinen Erfahrungen: exzessiver Einsatz von rjs führt in der Regel zu ziemlich zerfleddertem Code. Keine Ahnung, ob man mehr (sehr viel mehr...)Disziplin das auch in größeren Anwendungen sauber halten kann, aber wenn man mehr Interaktion im Client hat, dann gibt es immer irgendjemanden, der per js auf generierte ids zugreift, partials, die zu viel tun, actions die extrem spezialisiert für einen ajax-call irgendwas zusammen bauen usw. Ich bin immer noch der Meinung, dass das weniger an uns liegt, als vielmehr an rjs - das taugt für eine schnelle Demo, aber wenn's größer wird, dann ist es kaum zu vermeiden, dass es unübersichtlich wird.

Wir haben da irgendwann mal den Stecker gezogen und setzen seither rjs entweder nur noch sporadisch für Prototypen oder sehr isoliert an den Stellen ein, wo wir nur sehr wenig und dann sehr standardisiertes AJAX brauchen. Größere Sachen machen wir eigentlich in der Regel mit ext und frei nach Ajax-Head-Pattern (z.B.: http://www.metaskills.net/2008/5/24/the-ajax-head-br-design-pattern) - ob man da jetzt ext oder dojo oder jquery oder sogar sproutcore/cappucino/gwt nimmt, spielt dabei eigentlich keine Rolle: Wichtig scheint mir dabei der Trend zu sein, deutlich mehr Funktionalität in den javascript-Client zu schieben und die Server-Seite dabei deutlich zu entrümpeln.

Danke, für Deinen Input.
So wie ich Dich verstehe, werden bei diesem Ansatz wohl oder übel eine ganze Reihe BO-Code in JavaScript implementiert werden.
Dies wollte ich eigentlich überhaupt nicht, denn
- Wie modelliere ich am besten tests? Firewatir wäre eine Möglichkeit ist aber sehr langsam. - Ändere ich das DB-Schema, so muss ich den JavaScript-Code ggf. ändern. Dies widerspricht der ActiveRecord Philosophie, dass alles durch das DB-Layout definiert wird.

Nimmt man beide Punkte zusammen, so gibt dies imho eine teuflische Mischung:
Wo knallt der JavaScript-Code, wenn ich ein Feld im DB-Schema umbenenne?

Wie löst Du das Problem?

Danke,
Bis dene
Thorsten
_______________________________________________
rubyonrails-ug mailing list
[email protected]
http://mailman.headflash.com/listinfo/rubyonrails-ug

Antwort per Email an