Lekce 2 - IntelliJ IDEA a první konzolová aplikace
V minulé lekci, Úvod do Dartu, jsme si řekli něco o jazyce Dart jako takovém. V dnešním tutoriálu se zaměříme hlavně na SDK a IDE IntelliJ IDEA. Ukážeme si, jak se používá a naprogramujeme si jednoduchou konzolovou aplikaci.
SDK
Pro spuštění našich aplikací budeme potřebovat Dart SDK, které obsahuje nástroje jako dart (Dart VM), dart2js, dartanalyzer, dartdevc a další. Pokud používáte Windows, může pro vás být příjemnější provést instalaci Dartu pomocí Dart for Windows, aplikace 3. strany, která se vám bude starat i o aktualizace.
IDE
IDE je zkratka Integrated Development Environment (integrované vývojové prostředí) a jednoduše řečeno se jedná o aplikaci, ve které píšeme zdrojový kód a pomocí které potom naši aplikaci testujeme a ladíme.
Začít musíme samozřejmě tím, že si IntelliJ IDEA nainstalujeme. Toto IDE je zdarma, a to dokonce i pro komerční účely, a pokud studujete, JetBrains (společnost vyvíjející IntelliJ IDEA a další) nabízí Ultimate verzi tohoto IDE studentům zdarma. I normální verze nám však bude stačit, protože její omezení nejsou nijak velká.
Může se stát, že vám v IntelliJ IDEA nebudou fungovat speciální znaky s klávesou ALT GR jako { }, [ ], atp. V tomto případě běžte do Help -> Edit custom properties..., kam přidejte řádku actionSystem.force.alt.gr=true, uložte a restartujte.
Zálohování a verzování
Kromě IDE programátor potřebuje nějaký nástroj, který bude zálohovat a verzovat jeho práci. Nemůžeme se spolehnout na to, že program prostě budeme ukládat, protože jsme lidé a ne stroje. Lidé dělají chyby a když přijdete o několikadenní nebo dokonce několikatýdenní práci, může to zabolet. Je dobré naučit se na toto myslet hned od začátku. Velmi doporučuji Git, jeho nastavení by ale vydalo na celý kurz, proto v tomto kurzu komentovat verzování hlouběji nebudu.
Vytvoření projektu
Prvním krokem bude instalace Dart doplňku. Spustíme tedy IDEU a v aplikačním menu vybereme Configure -> Plugins, rozklikneme Install JetBrains plugins a nejdeme plugin s názvem Dart, který nainstalujeme a následně restartujeme IDE.
S již nainstalovaným Dart pluginem zvolíme v menu položku Create New Project. V levé části nového okna vybereme Dart, vpravo zaklikneme nabídku na vygenerování ukázkové Console Application, aplikaci pojmenujeme prvni_aplikace a necháme ji vytvořit.
Ovládání IntelliJ IDEA
Okno nyní vypadá asi takto, já jsem jej hodně zmenšil, aby se mi sem vešlo.
Zajímat nás bude zejména prostřední okno, do kterého nám IDEA vygenerovala kostru zdrojového kódu. Vidíme, že kód je oproti Javě či C# poměrně malý a náš kód obsahuje pouze jednu metodu.
První řádek nám říká, že importujeme ukázkový soubor, který se
explicitně pojmenoval jako prvni_aplikace. Klíčová pro nás bude metoda
main()
. Ta se spustí, když spustíme náš soubor main.dart.
Zatím můžeme ignorovat úplně všechno až na tělo metody
main()
.
Dalším důležitým prvkem v okně je okno pojmenované Dart Analysis. V tomto okně se vypisují varování a chyby ze statické analýzy kódu, kterou provádí dartanalyzer. Pro nás to znamená to okno, ve kterém se nám zobrazí chyby, pokud něco napíšeme špatně.
Nahoře v okně je zelené tlačítko Play, které nám spustí náš program. Spuštění můžeme provést též klávesovou zkratkou SHIFT + F10. Klávesové zkratky má IDEA velmi dobře řešené, když je budete znát, práce vám půjde rychleji od ruky. Vedle ikony šipky máme ikonu s broukem, ta symbolizuje akci debugování. To znamená, že se program bude spouštět v debug módu a bude obsahovat určité rutiny k výpisu chyb. Tento mód se používá zejména pro testování programu (když ho vyvíjíme) a běh programu může být kvůli tomu o něco pomalejší.
Adresářová struktura konzolové aplikace
Podíváme se, jak vypadá naše aplikace na disku. Otevřeme si složku s
aplikací, pro mne například D:\git\prvni_aplikace
.
Prvním souborem, na který se podíváme, je soubor pubspec.yaml. Tento soubor obsahuje nastavení Dart projektu. Nastavit se v něm dá např. název, popis a autor aplikace. Nejdůležitější částí jsou ale závislosti aplikace dependencies a závislosti používané při vývoji dev_dependencies. Nepovinně můžeme zadat i environment, kde máme nastavenou verzi sdk.
Dalším důležitým souborem je analysis_options.yaml, ve kterém se nastavují různé možnosti pro analyzér a linter. Linter kontroluje různá pravidla pro psaní kódu, ať už funkčních nebo stylistických věcí.
Přejdeme k samotnému kódu naší aplikace. Kód se člení do několika
základních složek. V naší aplikaci vidíme složky bin/ a lib/. Složka bin
obsahuje všechny spustitelné Dart aplikace z hlediska konzole/terminálu,
obsahuje tedy spustitelné soubory, kde každý z nich musí mít (aby byl
spustitelný) svou implementaci metody main()
. Složka lib obsahuje
všechen ostatní členěný kód aplikace. Pokud by vás zajímaly další
základní složky Dart aplikace, můžete se podívat na oficiální
konvence.
Hello world
Jelikož nám ukázková aplikace vygenerovala nějaký kód, necháme si v
main.dart pouze prázdnou metodu main()
bez parametrů a těla.
Soubor lib/prvni_aplikace.dart taktéž můžeme smazat nebo ignorovat.
Je zarytým zvykem, že prvním programem v nějakém novém jazyce bývá
tzv. Hello world. Jedná se o program, který jakýmkoli způsobem uživateli
zobrazí hlášku "Hello world", případně nějaký podobný text. Opět
zopakuji, že příkazy budeme psát do těla metody main()
. Budeme
potřebovat příkaz (pozn. výraz příkaz používám k zjednodušení) k
zobrazení textu.
K výpisu textu slouží:
print('text');
Příkazům se v Dartu říká metody. Každá metoda může obsahovat
nějaké vstupní parametry, které se zadávají do závorky a jsou oddělené
čárkou. V případě metody print()
je parametrem text k
vypsání. Textu budeme říkat textový řetězec nebo jen řetězec (anglicky
string) a budeme ho psát do uvozovek, aby tomu Dart rozuměl a nezaměňoval ho
s jinými příkazy. Za každý příkaz píšeme středník. Naše metoda
main()
tedy bude nyní vypadat nějak takto:
void main() { print('Hello ITnetwork!'); }
Program spustíme pomocí klávesy SHIFT + F10.
Konzolová aplikace
Hello ITnetwork!
Gratuluji, právě jste se stali programátorem. To bude pro dnešek vše, v příští lekci, Proměnné, typový systém a parsování, se podíváme na základní datové typy a vytvoříme si jednoduchou kalkulačku.
Dnešní projekt je přiložen jako soubor na konci článku, i u dalších tutoriálů budu vždy výsledek přikládat ke stažení. Doporučuji si ale nejprve projekt vytvořit pomocí tutoriálu a ke stažení se uchýlit jen v případě, když vám něco nepůjde. Pokud program hned jen stáhnete, nic se nenaučíte.
Měl jsi s čímkoli problém? Stáhni si vzorovou aplikaci níže a porovnej ji se svým projektem, chybu tak snadno najdeš.
Stáhnout
Stažením následujícího souboru souhlasíš s licenčními podmínkami
Staženo 27x (1.56 kB)
Aplikace je včetně zdrojových kódů v jazyce Dart