Čo je Dart?
Dart je objektovo orientovaný programovací jazyk vyvinutý spoločnosťou Google. Prvá verzia vyšla v roku 2011. Dart je primárnym jazykom frameworku Flutter, ktorý umožňuje vytvárať multiplatformové mobilné, webové a desktopové aplikácie z jedného kódu.
Definícia Dart
Čo je Dart
Dart je programovací jazyk vyvinutý v Google tímom vedeným Larsom Bakom a Kasperom Lundom. Bol predstavený na konferencii GOTO v októbri 2011. Pôvodne bol zamýšľaný ako náhrada JavaScriptu, ale skutočný úspech prišiel s frameworkom Flutter.
Dart je staticky typovaný jazyk s automatickým odvodením typov. Podporuje AOT (Ahead-of-Time) kompiláciu pre produkčné aplikácie aj JIT (Just-in-Time) kompiláciu pre rýchly vývoj s hot reload.
Dart a Flutter
- Flutter — open-source UI framework od Google na vývoj multiplatformových aplikácií
- Hot Reload — zmeny v kóde sa okamžite premietnu v aplikácii bez reštartu
- Jedna kódová základňa — z jedného Dart kódu sa vygeneruje natívna aplikácia pre Android, iOS, web, Windows, macOS a Linux
- Widget systém — UI sa skladá z kompozovateľných widgetov
Vlastnosti jazyka
Dart ponúka null safety (od verzie 2.12), async/await pre asynchrónne programovanie, mixiny, extension methods a isolates pre súbežné spracovanie. Syntax je známy vývojárom Java, C# alebo TypeScriptu. Dart má aj vlastný správca balíčkov pub s registrom pub.dev.
Praktický príklad
Príklad: Startup chce vytvoriť mobilnú aplikáciu pre Android aj iOS s obmedzeným rozpočtom.
Namiesto dvoch natívnych tímov (Swift + Kotlin) použije jedného vývojára s Dartom a Flutterom. Z jedného kódu vznikne natívna aplikácia pre obe platformy. Hot Reload umožňuje vidieť zmeny okamžite, čo zrýchľuje vývoj. Výsledná aplikácia beží pri 60 FPS s natívnym vzhľadom.
Často kladené otázky
Prečo sa Dart používa s Flutterom?
Dart bol špeciálne optimalizovaný pre Flutter. Podporuje AOT kompiláciu pre natívny výkon, JIT kompiláciu pre hot reload a má efektívny garbage collector. Dart a Flutter vyvíja rovnaký tím v Google.
Je Dart len pre Flutter?
Dart sa dá použiť aj na serverový vývoj (Shelf framework) a CLI nástroje. V praxi sa však takmer výlučne používa s Flutterom. Bez Fluttera by Dart pravdepodobne nebol populárny.
Je Dart podobný TypeScriptu?
Áno, Dart a TypeScript majú podobný syntax a oba sú staticky typované. Hlavný rozdiel je, že TypeScript sa kompiluje do JavaScriptu (web-first), zatiaľ čo Dart sa kompiluje do natívneho kódu (mobile-first cez Flutter).
Aký je výkon Flutter aplikácií v Darte?
Flutter aplikácie v Darte dosahujú takmer natívny výkon vďaka AOT kompilácii do ARM strojového kódu. Bežia pri 60+ FPS a sú rýchlejšie ako hybridné frameworky založené na WebView.
Súvisiace pojmy
Potrebujete pomôcť s webom?
Napíšte mi a poradím vám s vaším projektom. Prvá konzultácia je zadarmo a nezáväzná.