Programmering

Introduktion til Dojo-værktøjssættet, del 1: Opsætning, kerne og widgets

reWeb 2.0 har medført behovet for at udvikle omfattende JavaScript-infrastrukturkoder på klientsiden, noget få Java-udviklere så sig selv gøre for fem år siden. Openjo Dojo-værktøjssættet adskiller sig fra andre JavaScript-biblioteker med funktioner, der går langt ud over at forenkle DOM-adgang. I denne første halvdel af sin introduktion til Dojo introducerer Sunil Patil værktøjssætets grundlæggende funktioner, hjælper dig med at opsætte dit udviklings- og fejlfindingsmiljø og viser dig, hvordan du sætter Dojo's mojo i arbejde i dine Ajax-udviklingsprojekter. Niveau: Mellemliggende

I Web 1.0-verdenen krævede den fælles Java-applikationsarkitektur implementering af forretnings- og applikationsflowlogik med Java EE på serversiden. Webapplikationsudviklere brugte typisk kun JavaScript til inputvalidering og til at vise fejlmeddelelser til brugerne. Følgelig brugte de fleste Web 1.0-applikationer en eller anden Model-View-Controller (MVC) ramme - såsom Struts, JavaServer Faces (JSF) eller Spring MVC - på serversiden, men få havde brug for en JavaScript-ramme til klient- side programmering.

Web 2.0 har indvarslet en meget anden programmeringsmodel, hvor meget af applikationsflowet og forretningslogikken er udviklet ved hjælp af JavaScript på klientsiden. Vi bruger ofte JavaScript-kode til opgaver som:

  • Foretag asynkrone anmodninger til serversiden
  • Dokumentobjektmodel (DOM) manipulation og håndtering af logik, der fungerer på tværs af flere browsere
  • Internationalisering
  • Logning

Du kan enten skrive og vedligeholde denne infrastrukturkode alene eller tage den mindre smertefulde vej at bruge et JavaScript-bibliotek. En af de mere dygtige poster i dette rum er Dojo-værktøjssættet, en open source JavaScript-ramme, som du kan bruge til at oprette gratis eller kommercielle applikationer. Denne artikel introducerer dig til Dojos kernefunktioner og widgetbibliotek; leder dig gennem installation og opsætning af et JavaScript-udviklings- og fejlfindingsmiljø (ved hjælp af Dojo og Firebug); og kommer i gang med at oprette en prøveapplikation ved hjælp af Dojo. Du lærer også om Dojos understøttelse af objektorienteret programmering i JavaScript (som er baseret på velkendte begreber som klasser, konstruktører og arv) og får en hurtig introduktion til Dojo-moduler.

Et overblik over Dojo

Der er i øjeblikket en hel række open source og kommercielle JavaScript-rammer til rådighed, herunder Prototype, EXTJS, YUI og jQuery. Mens de fleste JavaScript-rammer fokuserer på at forenkle DOM-adgang, kan det hævdes, at Dojo er en one-stop-løsning. Her er nogle af, hvad Dojo gør for dig:

  • Introducerer konceptet med klasser, konstruktører og arv i JavaScript, så du kan oprette objektorienteret JavaScript-kode.
  • Giver dig mulighed for at opbygge mere håndterbar kode ved at opdele din kode i moduler.
  • Forenkler Ajax-programmering ved at tilvejebringe infrastrukturkode til at fremsætte asynkrone anmodninger ved hjælp af XMLHttpRequest og cross-browser-kompatibel DOM-manipulationskode.

Som ramme har Dojo tre hovedkomponenter:

  • Dojo-kernen giver kernefunktionalitet såsom evne til at foretage opkald til fjernmetoder, manipulere DOM-node og manipulere Cascading Style Sheets (CSS). Dojo-kernen understøtter også animationsfunktioner og træk-og-slip-funktionalitet.
  • Dijit er Dojos widgetbibliotek, bygget oven på Dojo-kernen. Dijit leverer skabelonbaserede, tilgængelige widgets, ikke kun til simpel formkontrol, men også avancerede widgets såsom kalenderkontrol, menuer, værktøjslinjer, statuslinjer, diagrammer og grafer.
  • DojoX er en container til udvikling af udvidelser til Dojo-værktøjssættet. Det fungerer som en inkubator for nye ideer og en testbed til eksperimentelle tilføjelser til hovedværktøjssættet samt et lager for mere stabile og modne udvidelser.

Dojos historie

Alex Russell, David Schontzler og Dylan Schieman startede arbejdet med Dojo-rammen inden i 2004, mens han arbejdede for Informatica. Senere begyndte mange andre udviklere at bidrage til Dojo. I 2005 blev Dojo-stiftelsen dannet for at huse koden og administrere intellektuelle ejendomsrettigheder. Indtil videre er der udstedt otte større udgivelser, og rammen er blevet downloadet mere end 1 million gange. Virksomheder som IBM, AOL, Sun, SitePen, Blogline, Google, Nextweb og andre bidrager til Dojo-rammen.

Opsætning af dit udviklingsmiljø

Inden du kan begynde at udvikle denne artikels eksempler på Dojo-applikation, skal du konfigurere dit udviklings- og fejlfindingsmiljø, så du hurtigt kan afprøve programændringer og fejle problemer, hvis der opstår fejl. Opsætning af et udviklingsmiljø til en JavaScript-ramme som Dojo er lidt anderledes end at gøre det for Java SE- eller EE-rammer. Du skal først installere Dojo-rammen i din webapplikation og derefter indstille fejlfindingsmiljøet i browseren.