In de IT-wereld zegt men wel eens dat er 10 soorten mensen zijn: zij die binair kunnen tellen en al de rest.
Developers kan men ook zo opdelen: zij die object-georiënteerd programmeren en de anderen.
Ook webdevelopers worden opgedeeld in 2 groepen: een front-end groep en een back-end groep. Deze laatste zal ook de groep zijn die object-georiënteerd programmeren verkiest. Aan de front-end waar ze met Javascript werken, liggen ze daar meestal niet echt wakker van. Als een back-end developer dan in Javascript moet programmeren zal hij wel een paar keer in zichzelf vloeken omdat hij in zo een ongestructureerd zootje moet werken.
Javascript wordt ook door de client side uitgevoerd, waardoor je afhankelijk van het materiaal van de gebruiker. Hoe groter en complexer je de code maakt, hoe trager ze wordt.
Ook Google sukkelde met deze problemen, totdat ze vaststelden dat ze echt niet meer verder konden en besloten om hier een alternatief voor te maken. Er werd een klein team samengesteld onder leiding van Lars Bak, de man die zowat in zijn eentje de V8 engine van Google Chrome heeft geschreven. Zij brachten onlangs de eerste stabiele versie van hun taal uit: Dart 1.0.
Google omschrijft Dart als een gestructureerde en een flexibele programmeertaal voor het bouwen van webapplicaties. In Dart is het mogelijk om applicaties of programma's in een Java/C-achtige stijl te schrijven. Deze applicaties kunnen dan op 2 manieren gebruikt worden: omzetten naar Javascript, wat maakt dat je de code in elke moderne browser kan gebruiken, of gebruik maken van een speciaal ontwikkelde Dart virtuele machine. De virtuele machine zit tegenwoordig standaard ingebouwd in Google Chrome dus voor Chrome moet de Dart-applicatie zelfs niet meer naar Javascript worden omgezet.
Naast het feit dat nu object-georiënteerd geprogrammeerd kan worden, is een ander voordeel van Dart t.o.v. handgeschreven Javascript de snelheidswinst. Deze wordt hieronder weergegeven in een grafiek.
Hierin zien we dat de handgeschreven (de bruin-groene lijn) het traagste gaat en dat de naar Javascript gecompileerde Dart-code al wel wat sneller gaat. Maar vooral de snelheidswinst te behalen met de VM valt op. Deze is tussen de 42% en de 130% sneller dan handgeschreven Javascript.
Dart zit nog maar aan zijn eerste stabiele versie, dus er wordt verwacht dat er nog veel meer snelheidswinst gemaakt zal worden, zowel met de gecompileerde versie als met de VM. Het lijkt weinig waarschijnlijk dat bedrijvan als Apple, Microsoft of Mozilla de Dart VM willen integreren in hun eigen browser, dus voorlopig is Dart vooral goed om te gebruiken in Chrome. Maar het gebruiksgemak van Dart in vergelijking met Javascript is sowieso al een reden voor een (OO-)programmeur om het een kans te geven.
Google toont Dart ondertussen ook al aan het bredere publiek, onder andere met Spark, een omgeving om Chrome-apps in te maken die volledig in Dart is geschreven. Probeer dat maar eens te doen in Javascript.
Geef Dart zeker eens een kans! Via de website van Dart kan je de nodige bestanden downloaden om te starten, waarna ze proberen om jou zo goed mogelijk te begeleiden bij het maken van je eerste Dart app met een aantal voorbeelden en goede documentatie.
Veel succes, en welcome to the Dart side!