peterS.: JavaScript modularisieren

Beitrag lesen

gruss Heiko,

für die Modularisierung anspruchsvoller Web-Applikationen
setze ich nur noch auf RequireJS. Dieses Framework arbeitet
hybride - als clientseitiger Loader und/oder als Buildprozess.

In der Entwicklungsphase nutzt man RequireJS ausschließlich
als clientseitigen Loader. Dieser *erkennt* Abhängigkeiten von
Modulen und lädt diese dann entsprechend sequentiell oder eben
parallel. Da Module in dieser Phase weder zusammengefasst noch
komprimiert sind, gestaltet sich die Fehlersuche sehr einfach.

Über Eclipse lassen sich seit geraumer Zeit auch sehr gut
JavaScript-IDEs bauen, die einem automatische Unit- bzw. Ober-
flächentests abnehmen.
RequireJS hat dort ebenfalls seinen Platz, und übernimmt die
Aufgabe, auf Knopfdruck *builds* zu erstellen. Modularisierung/
Packaging bzw. Komprimierung lassen sich im buildscript beliebig
einstellen. Auf die Vorteile des clientseitigen parallelen Ladens
muss man trotzdem nicht verzichten, wenn man z.b. aus 50 Modulen
3 bis 5 handlich, komprimierte Pakete erstellt.

Ein weiterer, von mir sehr geschätzter Vorteil von RequireJS ist,
dass gleichlautende Modulnamen verschieden implementiert sein
können, da RequireJS zum einen den globalen Namensraum nicht
verseucht und zum anderen die Module intern auf deren Pfaden
basierend verwaltet.

so long - peterS. - pseliger@gmx.net

--
»Because objects in JavaScript are so flexible, you will want to think differently about class hierarchies.
Deep hierarchies are inappropriate. Shallow hierarchies are efficient and expressive.« - Douglas Crockford
ie:( fl:) br:> va:( ls:& fo:) rl:) n3;} n4:} ss:} de:µ js:} mo:? zu:]