W ostatnich latach silniki javascript znacząco przyspieszyły. Mimo to trudno jest w tym języku pisać duże aplikacje ze względu na jego dynamiczną naturę. W odpowiedzi na ten problem w ostatnich latach pojawiło się wiele języków kompilowanych do javascriptu. Jednym z nich jest Dart od Google, który właśnie osiągnął wersję M1.
Dart to nowa otwarto-źródłowa technologia która wg jej twórców ułatwia tworzyć aplikacje webowe dzięki: nowemu opcjonalnie typowanemu językowi, zestawowi bibliotek i edytorowi. Można go używać zarówno po stronie przeglądarki gdzie jest kompilowany do javascript lub w maszynie wirtualnej Darta wbudowanej w Chromium, jak i po stronie serwera.
Rok temu Google upubliczniło Darta jako pokaz możliwości technologii (ang. technology preview). Od tego czasu nastąpiło sporo zmian.
Składnia języka jest bardziej zwartą wersję popularnych języków programowania java i c#, ograniczoną jednym z głównych celów Darta jakim jest kompilacja do efektywnego javascriptu.
Dart ma dwie bardzo ciekawe cechy. Pierwsza z nich to możliwość serializacji stanu aplikacji (poprzez serializację sterty) na poziomie maszyny wirtualnej (ang. vm snapshotting), dzięki czemu programy Dart mogą uruchamiać się nawet do 10 razy szybciej w porównaniu do wersji skompilowanej do javascript. Druga ciekawa własność, to mechanizm przetwarzania równoległego (ang. concurrency) isolates, którego koncepcję zaczerpnięto z Erlanga.
Dart ma bardzo aktywną listę dyskusyjną i bogatą dokumentację. Edytor i SDK (wersje linux, mac, windows) można pobrać stąd.
Zachęcam do przeczytania dokumentu FAQ, obejrzenia wstępu do Darta, jak również do czytania artykułów, przeglądania API i obejrzenia materiałów wideo dotyczących Darta na stronie samego Darta