V poslednej dobe prudko narástla dôležitosť JavaScriptu na webe a vývojári čoraz bolestivejšie narážajú na jeho nedostatky. Riešením možno bude postupné obohacovanie JavaScriptu o chýbajúcu funkcionalitu a plátanie najväčších problémov. Možno nie. Možno to bude Dart.
Dnes si rozchodíme Dart Editor a preskúmame prostredie. Jedným klikom vyvinieme jednoduchú webovú aplikáciu a trochu sa na nás nalepí zo syntaxe dartu. Vyhrňme si rukávy a pusťme sa do roboty, dartizáni!
Dnes naimplementujeme klasickú hru Pexeso. Názorne si predvedieme, ako písať aplikácie s unittestami, pracovať s knižnicami, triedami a typmi. Nemá zmysel otáľať, hor sa do roboty!
Dokončíme implementáciu pexesa v Darte začatú v minulom dieli. Spoznáme prácu s DOM v Darte, preskúmame štandardnú HTML knižnicu dodávanú s Dartom. Poďme na to!
Webový vývojár dennodenne pracuje s ajaxovými requestami, callbackmi, obsluhovaním eventov. Neblokujúce API je v Javascripte štandardom, no nie je vždy úplne najpohodlnejšie používať ho. Dart rieši asynchrónne operácie pomocou Futures.
Streams sú messaging vrstva v Darte. Ak sa zamýšľate nad posielaním vlastných správ alebo eventov medzi jednotlivými objektmi, Streams sú tu pre vás.
Dart ako platforma môže mať nádej na úspech, len ak preň bude existovať dostatok externých knižníc a pluginov. Dnes sa na webe nachádzajú milióny rôznych knižníc a pluginov pre JavaScript, kde za ne hľadať náhradu v Dartovom svete? Dobrá správa, nemusíme!
Ľudia zvyknutí na Java, C#, či C++ ohŕňajú nosom nad tým, že Dart je dynamicky typovaný. Ľudia odchovaní na Pythone, Javascripte či Ruby ohŕňajú nosom nad tým, že Dart to s podporou dynamických features príliš nepreháňa. Ľudia obľubujúci Dart nosom neohŕňajú a Dart-ovský typesystem pokladajú za najlepší vynález hneď po krájanom chlebe. O čom táto kontroverzia vlastne je, a ako to celé funguje?
Asynchrónnosť má niečo do seba. Imagine: žiadne thready, žiadne zamykanie objektov, žiadne deadlocks, livelocks. Žiadne webservery s vymrazenými 4 vláknami. Žiadne continuations for rescue (zakričte: fuj) a ďalšie podobné hacky. Žiadne problémy s neefektívne využitými zdrojmi. Kto však píše asynchrónny kód, vie, že táto selanka je len jednou časťou pravdy; asynchrónnosť vie niekedy poriadne skomplikovať život!