Modular JavaScript : A Comparison of Module Loaders
Rask, Matias (2012)
Rask, Matias
Arcada - Nylands svenska yrkeshögskola
2012
All rights reserved
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-2012112115856
https://urn.fi/URN:NBN:fi:amk-2012112115856
Tiivistelmä
Det här examensarbetet handlar om hur modulärprogrammering kan implementeras i JavaScript som saknar ett nativt modulsystem. JavaScript har vuxit från ett simpelt skriptspråk till ett fullt utvecklat programmeringsspråk för webbapplikationer. På grund av att webbapplikationer kan innehålla flera tusen rader kod, är det viktigt att utvecklarna kan strukturera och spjälka upp källkoden för att underlätta upprätthållandet av applikationen. Examensarbetet omfattar en teknisk beskrivning på hur JavaScript-baserade webbapplikationer körs i webbläsare samt en teoretisk och en praktisk jämförelse mellan modulladdarna Dojo Toolkit 1.6, Googles Closure library och Asynchronous Module Definition (AMD). En experimentell applikation har programmerats med hjälp av ovannämnda modulladdare för att kunna testa och jämföra de praktiska egenskaperna. This thesis covers modular programming and how it can be implemented in JavaScript which lacks a native module system. JavaScript has grown from a simple scripting language into a complete programming language for web applications. Since web applications can include thousands of lines of code it is important for developers to be able to structure and split up application source code into more manageable modules to simplify the application maintenance. In this thesis, a description of how JavaScript web applications are executed in a web browser and a theoretical and a practical comparison of the module loaders Dojo Toolkit 1.6, Google Closure library and Asynchronous Module Definition (AMD) is provided. A sample application has been made with the help of the above mentioned module loaders to compare and test the practical differences.