Vydělávej až 160.000 Kč měsíčně! Akreditované rekvalifikační kurzy s garancí práce od 0 Kč. Více informací.
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.

Lekce 2 - Apache NetBeans, IntelliJ IDEA a první konzolová aplikace

V minulé lekci, Úvod do jazyka Java, jsme si řekli něco o jazyce jako takovém a také jsme pochopili, jak Java funguje.

V dnešním Java tutoriálu se zaměříme především na vývojová prostředí NetBeans a IntelliJ. Ukážeme si, jak se instalují, používají a naprogramujeme si jednoduchou konzolovou aplikaci.

Příprava prostředí

Začněme přípravou prostředí pro vývoj v Javě.

Instalace JDK

Nejprve si musíme stáhnout tzv. JDK (Java Development Kit). To je soubor základních nástrojů, které potřebujeme pro vývoj v Javě a pro běh samotného NetBeans IDE (IntelliJ můžeme spustit i bez JDK). Existuje více distribucí JDK, my použijeme distribuci nazvanou Eclipse Temurin. Pro stažení klikneme na tlačítko Latest LTS release a poté provedeme instalaci. Při instalaci je důležité na obrazovce s výběrem komponent zaškrtnout, že chceme, aby instalátor vytvořil a nastavil systémovou proměnnou JAVA_HOME:

Nastavení JAVA_HOME proměnné - Základní konstrukce jazyka Java

Bez této systémové proměnné by instalátor NetBeans nevěděl, kde má JDK hledat a nemohl by tudíž fungovat.

Instalace IDE

Nyní stáhneme samotné IDE (Apache NetBeans nebo IntelliJ IDEA). 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. Existuje více různých IDE, populární je také například Eclipse.

  • My použijeme IntelliJ IDEA, které je volně dostupné ke stažení na stránce společnosti JetBrains. Pro naše účely nám postačí Community Edition, která je zdarma. Kliknutím na tlačítko Download se spustí stahování instalátoru.

    Pro našince není bez zajímavosti, že IntelliJ vyvíjí společnost JetBrains, která byla založena v Praze.

  • My použijeme Apache NetBeans, které je volně dostupné ke stažení na stránce Apache NetBeans. Vybereme nejnovější dostupnou verzi, klikneme na tlačítko Download, na další stránce vybereme verzi pro Windows-x64 v sekci Installers a konečně na poslední stránce si vybereme z jakého mirroru se má stahovat - obvykle je nejlepší volbou ten úplně první odkaz.

    Pro našince není bez zajímavosti, že NetBeans mají české kořeny.

Instalaci odklikáme (vynextíme), není třeba nic nastavovat.

Instalace Dropboxu - Zálohování

Kromě IDE potřebujeme nějaký nástroj, který bude zálohovat a verzovat naši 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 program Dropbox, který je extrémně jednoduchý a sám vaše soubory verzuje (tedy zachovává změny v čase a je možné se vrátit ke starším verzím projektu) a zároveň synchronizuje s webovým úložištěm. I kdybyste si projekt omylem smazali, přepsali, ukradli vám notebook nebo vám zkolaboval pevný disk, vaše data zůstanou v bezpečí. Dropbox také umožňuje sdílet jeden projekt mezi více vývojáři. Více o Dropboxu viz tento článek, který obsahuje zároveň pozvánku do Dropboxu s 0,5 GB prostoru navíc.

Jako další verzovací nástroj se hojně používá GIT, jeho nastavení ale vydalo na samostatný kurz a Dropbox zatím pro naše účely bohatě postačuje.

Vytvoření Java projektu

  • Spustíme si IntelliJ a v okně, které se nám otevře klikneme na ikonku + s popiskem New Project:
    Založení nového projektu v IntelliJ - Základní konstrukce jazyka Java

    V okně New Project zadáme nejprve název naší aplikace. Jako jméno aplikace zvolíme PrvniAplikace. Dále zvolíme umístění projektu. V Dropboxu si vytvoříme složku na naše projekty, např. IntelliJProjects/. U lokace pomocí tlačítka s ikonkou složky vybereme složku C:\Users\vase_jmeno\Dropbox\IntelliJProjects\.

    Jako jazyk ponecháme Java a Build system přepneme na Maven.

    Maven je mocný automatizační nástroj, který slouží ke správě projektů napsaných především v jazyce Java. Jeho detailnější popis je zcela mimo rámec tohoto seriálu, nás na této úrovni zajímá pouze to, že nám s pomocí IntelliJ vytvoří základní kostru našeho projektu a následně bude na požádání náš projekt sestavovat (tzv. buildit) a spouštět. S tím si vystačíme po celou dobu našeho seriálu pro začátečníky.

    IntelliJ sám najde JDK, které jsme nainstalovali. Není ale problém si nainstalovat jiné, pokud by to bylo pro nějaký konkrétní projekt potřeba. My necháme naše Eclipse Temurin.

    Kdybychom zaškrtnuli možnost Add sample code, IntelliJ by nám automaticky vygeneroval naší první třídu. Do budoucna se nám ale bude hodit vědět, jak si vytvořit vlastní. Tuto možnost tedy necháme odškrtnutou a za chvíli si vysvětlíme, jak si třídu vytvořit :-)

    Formulář nám dále umožňuje nastavit GroupId a ArtifactId. Jde o informace, které potřebuje Maven pro vytvoření projektu a v této chvíli si moc nemusíme lámat hlavu nad tím, co přesně která položka znamená.

    Bude vhodné po dobu našeho seriálu mít nastavenou GroupId na cz.itnetwork. IntelliJ si toto nastavení zapamatuje při vytvoření našeho prvního projektu a při tvorbě dalších projektů nám to již předvyplní.

    Okno bude vypadat takto:

    Nastavení aplikace - Základní konstrukce jazyka Java
    Formulář následně potvrdíme.
  • Spustíme si NetBeans a v aplikačním menu zvolíme položku File -> New Project:
    Založení nového projektu v NetBeans - Základní konstrukce jazyka Java

    V okně New project vybereme z kategorie Java with Maven projekt Java Application a klikneme na Next:

    Založení nového projektu v NetBeans - Základní konstrukce jazyka Java

    Maven je mocný automatizační nástroj, který slouží ke správě projektů napsaných především v jazyce Java. Jeho detailnější popis je zcela mimo rámec tohoto seriálu, nás na této úrovni zajímá pouze to, že nám s pomocí NetBeans vytvoří základní kostru našeho projektu a následně bude na požádání náš projekt sestavovat (tzv. buildit) a spouštět. S tím si vystačíme po celou dobu našeho seriálu pro začátečníky.

    Jelikož jde o náš úplně první projekt v NetBeans, vyskočí na nás dialog Finding Feature, ve kterém klikneme na Activate.... Tím dojde k instalaci potřebných dodatečných modulů. Toto je potřeba pouze při prvním vytváření projektu daného typu:

    Instalace dodatečných modulů - Základní konstrukce jazyka Java

    Poté pokračujeme dále. Na další obrazovce můžeme náš projekt pojmenovat a určit jeho umístění na disku.

    Jako jméno aplikace zvolíme PrvniAplikace. V Dropboxu si vytvoříme složku na naše projekty, např. NetBeansProjects/. U lokace pomocí tlačítka Browse vybereme složku C:\Users\vase_jmeno\Dropbox\NetBeansProjects\. Okno bude vypadat takto:

    Nastavení aplikace - Základní konstrukce jazyka Java

    Formulář nám dále umožňuje nastavit Group Id, Version a Package. Jde o informace, které potřebuje Maven pro vytvoření projektu a v této chvíli si moc nemusíme lámat hlavu nad tím, co přesně která položka znamená. Pouze si všimněme, že Package je vlastně Group Id s název projektu malými písmeny.

    Bude vhodné po dobu našeho seriálu mít nastavenou Group Id na cz.itnetwork. NetBeans si toto nastavení zapamatuje při vytvoření našeho prvního projektu a při tvorbě dalších projektů nám to již předvyplní.

    Formulář následně potvrdíme.

Vytvoření první třídy

  • V IntelliJ jsme právě založili nový projekt:
    Okno IntelliJ - Základní konstrukce jazyka Java
    Okno jsem hodně zmenšil, aby se mi sem vešlo celé :)
  • V NetBeans jsme právě založili nový projekt:
    Okno NetBeans - Základní konstrukce jazyka Java
    Okno jsem hodně zmenšil, aby se mi sem vešlo celé :)

Panel Project(s)

  • Při pohledu do levého panelu Project si všimněme, že se nám zde objevil náš projekt PrvniAplikace spolu se dvěma podsložkami z nichž nás prozatím bude zajímat pouze src/. Složku src/ rozklikneme a objeví se nám složka main. Tu rozklikneme a objeví se nám složka java. Bývá dobrým zvykem si vytvářet balíčky a do nich až vkládat třídy. Pokud se nám zde balíček nevytvoří automaticky, klikneme na složku java pravým tlačítkem a zvolíme New -> Package:
    Vytvoření nové třídy - Základní konstrukce jazyka Java

    Zadáme název balíčku - cz.itnetwork a potvrdíme klávesou Enter:

    Nastavení nové třídy - Základní konstrukce jazyka Java

    Na náš balíček opět klikneme pravým tlačítkem a vybereme New -> Java Class:

    Vytvoření nové třídy - Základní konstrukce jazyka Java

    V dialogu zadáme název naší první třídy - PrvniAplikace a stiskneme klávesu Enter:

    Nastavení nové třídy - Základní konstrukce jazyka Java
  • Při pohledu do levého panelu Projects si všimněme, že se nám zde objevil náš projekt PrvniAplikace spolu se čtyřmi podsložkami z nichž nás prozatím bude zajímat pouze Source Packages/. Složku Source Packages/ rozklikneme a objeví se nám náš balíček cz.itnetwork.prvniaplikace. Na ten klikneme pravým tlačítkem a vybereme New -> Java class:
    Vytvoření nové třídy - Základní konstrukce jazyka Java

    V dialogu zadáme název naší první třídy - PrvniAplikace. Zkontrolujeme její umístění v balíčku cz.itnetwork.prvniaplikace a klikneme na Finish:

    Nastavení nové třídy - Základní konstrukce jazyka Java

Kód programu

Vytvoří a otevře se nám nový soubor, do kterého už budeme psát první program:

  • Nastavení nové třídy - Základní konstrukce jazyka Java
  • Nastavení nové třídy - Základní konstrukce jazyka Java

IDE nám vygenerovalo kód výše automaticky. Klíčová slova package, public a class zatím nebudeme řešit, spokojíme se s tím, že je to určitý způsob, jak se aplikace v Javě strukturují. Každý Java program se totiž skládá ze tříd (classes) organizovaných do balíčků (packages).

Metoda main()

Jako vstupní bod programu, místo odkud se začíná program provádět, slouží metoda nazvaná main(). Tu zde zatím nemáme, takže ji musíme vytvořit. Umístíme tedy kurzor někam mezi ty složené závorky (do těla třídy PrvniAplikace) a napíšeme následující kód:

public static void main(String[] args) {

}

Také můžeme využít doplňovací funkci našeho IDE (toto umí jak NetBeans, tak IntelliJ) - napíšeme main a stiskneme Tab a IDE celou kostru metody main() doplní za nás.

Opět se prozatím nebudeme zabývat tím, co to všechno znamená. Jediné co nás teď zajímá je tělo metody main(), tedy prostor mezi těmi složenými závorkami. Sem budeme psát náš kód.

Spuštění projektu

Před pokusem o spuštění nezapomeneme naši nově vytvořenou třídu nejprve uložit. Buď pomocí ikonky s disketkami a nebo pomocí klávesové zkratky Ctrl + S.

Důležitým prvkem v okně pro nás bude zelené tlačítko Run Project v horní liště, které program zkompiluje a spustí. Můžeme si to zkusit, protože náš program zatím nic nedělá, hned se zase vypne. Spuštění můžeme také provést klávesovou zkratkou F6 pro NetBeans a Shift + F10 pro IntelliJ.

Pokud používáme NetBeans, při prvním pokusu o spuštění na nás pravděpodobně vyskočí okno Select main class for Execution. NetBeans se nás ptá, kterou metodu main() má spustit, v projektu jich totiž může být více. Jelikož my jsme vytvořili jenom jednu metodu main(), stačí nám pouze zaškrtnout Remember Permanently a kliknout na Select Main Class:

Nastavení main metody - Základní konstrukce jazyka Java

Při příštím spuštění už se nás NetBeans ptát nebude.

Náš první program Hello world

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().

K výpisu textu slouží:

System.out.println("Text");

System je tzv. třída. Pojmem třída budeme zatím chápat soubor nějakých příkazů, příkazům se v Javě říká metody. System tedy obsahuje metody k obsluze vstupů a výstupů.

Na výstupu (out) voláme metodu println(), která vypíše text. Vidíme, že metodu na třídě voláme pomocí operátoru tečka. 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 println() 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 Java rozuměla a nezaměňovala ho s jinými příkazy. I kdyby metoda neměla žádné parametry, je závorka za ní povinná a byla by prázdná.

Příkazy píšeme na samostatné řádky a za každý píšeme středník (;).

Pokud nevíte, kde je na klávesnici ;, tak pod Esc:

Středník - Základní konstrukce jazyka Java

Naše metoda main() tedy bude nyní vypadat nějak takto:

public static void main(String[] args) {
    System.out.println("Hello ITnetwork!");
}

Opět si můžeme ulehčit život využitím doplňovacích možností a místo vypisování System.out.println... můžeme napsat sout a stisknout Tab. IDE napíše System.out.println("") za nás a ještě nám šikovně umístí kurzor přímo mezi uvozovky.

Uvozovky jsou na české klávesnici na stejné klávese jako ů, ale píšeme je se Shift:

Uvozovky - Základní konstrukce jazyka Java

Program spustíme pomocí klávesy F6, či Shift + F10. Výstup našeho prvního programu bude vypadat nějak takto:

  • Normální output Mavenu - Základní konstrukce jazyka Java
  • Normální output Mavenu - Základní konstrukce jazyka Java

Potlačení informací Mavenu

Pokud používáte NetBeans, nejspíše jste si všimli, že kromě námi požadovaného textu Hello ITnetwork se nám zobrazuje i hromada dalšího textu, který jsme nechtěli. Jedná se o výpis různých informací Mavenu a můžeme jej buď ignorovat a nebo jej potlačit. Stačí v okně Output vlevo kliknout na tlačítko Maven Settings (je to ten co vypadá jako klíč a nějaké šroubky) a v dialogu, který se otevře do políčka Global Execution Options vložit -q. Poté klikneme na Apply a dialog zavřeme pomocí OK:

Nastavení tichého modu Mavenu - Základní konstrukce jazyka Java

Od této chvíle poběží Maven v tichém modu (quiet) a nám se tak bude zobrazovat jenom to co opravdu chceme vidět:

Tichý output Mavenu - Základní konstrukce jazyka Java

Gratuluji, právě jste se stali programátorem 😊 To bude pro dnešek vše.

Projekt je přiložen jako soubor na konci článku, i u dalších tutoriálů bude vždy výsledek přiložen 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.

V příští lekci, Proměnné a typový systém v Javě, se podíváme na základní datové typy a vytvoříme si jednoduchý program vypisující proměnnou.


 

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 3352x (7.26 kB)
Aplikace je včetně zdrojových kódů v jazyce Java

 

Předchozí článek
Úvod do jazyka Java
Všechny články v sekci
Základní konstrukce jazyka Java
Přeskočit článek
(nedoporučujeme)
Proměnné a typový systém v Javě
Článek pro vás napsal David Hartinger
Avatar
Uživatelské hodnocení:
1453 hlasů
David je zakladatelem ITnetwork a programování se profesionálně věnuje 15 let. Má rád Nirvanu, nemovitosti a svobodu podnikání.
Unicorn university David se informační technologie naučil na Unicorn University - prestižní soukromé vysoké škole IT a ekonomie.
Aktivity