Java | JaroslavBeno http://jaroslavbeno.sk Programovanie, kurzy, články, tipy, triky a mnoho iného. Thu, 10 Sep 2020 13:14:26 +0000 en-US hourly 1 https://wordpress.org/?v=5.5.3 http://jaroslavbeno.sk/wp-content/uploads/2020/03/cropped-JB3-32x32.png Java | JaroslavBeno http://jaroslavbeno.sk 32 32 Písanie kódu – programovanie v Jave http://jaroslavbeno.sk/pisanie-kodu-programovanie-v-jave/?utm_source=rss&utm_medium=rss&utm_campaign=pisanie-kodu-programovanie-v-jave Thu, 10 Sep 2020 13:14:24 +0000 http://jaroslavbeno.sk/?p=838 Ak budeš písať kód / programovať v jazyku Java, tak budeš používať text. Áno je to tak, programy budeme písať vo forme textu – nečudo, keď hovoríme o písaní. Kód by sme mohli začať písať do jednoduché textového editoru (program v tvojom počítači). Vo windowse máš napríklad Notepad. Tento text / kód napíšeme a uložíme do súboru. Ako […]

The post Písanie kódu – programovanie v Jave appeared first on JaroslavBeno.

]]>
Ak budeš písať kód / programovať v jazyku Java, tak budeš používať text. Áno je to tak, programy budeme písať vo forme textu – nečudo, keď hovoríme o písaní.

Kód by sme mohli začať písať do jednoduché textového editoru (program v tvojom počítači). Vo windowse máš napríklad Notepad.

Tento text / kód napíšeme a uložíme do súboru. Ako ho spustíme? Tu je to trošku zložitejšie. V našom počítači musíme mať nainštalovanú Javu a v príkazovom riadku (vo filmoch v niečom podobnom hackujú) tento súbor pomocou špeciálnych príkazov prerobíme na bytecode súbor. Tento bytecode súbor potom vieme pomocou ďalšieho príkazu spustiť.

My ale nebudeme využívať jednoduchý notepad a príkazový riadok z operačného systému. Budeme používať program/textový editor, ktorý sa vo všeobecnosti nazýva vývojové prostredie. V tomto programe budeme písať naše programy, spúšťať ich a podobne.

Existuje niekoľko známych a používaných vývojových prostredí. Eclispe, NetBeans alebo IntelliJ IDEA. Je na tebe, ktorý si vyberieš. Ja používam a odporúčam vývojové prostredie IntelliJ IDEA Community edition, ktorý je zadarmo.

Teraz je už čas začať písať tvoj prvý Java kód.

Najnovšie články

The post Písanie kódu – programovanie v Jave appeared first on JaroslavBeno.

]]>
Ako Java pracuje s pamäťou pri referenčných typoch http://jaroslavbeno.sk/ako-java-pracuje-s-pamatou-pri-referencnych-typoch/?utm_source=rss&utm_medium=rss&utm_campaign=ako-java-pracuje-s-pamatou-pri-referencnych-typoch http://jaroslavbeno.sk/ako-java-pracuje-s-pamatou-pri-referencnych-typoch/#respond Sun, 17 May 2020 04:26:51 +0000 http://jaroslavbeno.sk/?p=556 Referenčným dátovým typom sú všetky typy, ktoré nie sú primitívnymi dátovými typmi. Objekty, ktoré vznikli na základe triedy sú referenčné dátové typy. Objekty vznikajú ak zavoláme kľúčové slovo new pri konštruktore alebo keď vytvárame String pomocou úvodzoviek. V tomto článku sa dozvieš ako Java pracuje s pamäťou pri referenčných typoch. Napríklad ak máme triedu Dog […]

The post Ako Java pracuje s pamäťou pri referenčných typoch appeared first on JaroslavBeno.

]]>
Referenčným dátovým typom sú všetky typy, ktoré nie sú primitívnymi dátovými typmi. Objekty, ktoré vznikli na základe triedy sú referenčné dátové typy. Objekty vznikajú ak zavoláme kľúčové slovo new pri konštruktore alebo keď vytvárame String pomocou úvodzoviek. V tomto článku sa dozvieš ako Java pracuje s pamäťou pri referenčných typoch.

Napríklad ak máme triedu Dog a na základe tejto triedy vznikne objekt Dog, tak tento objekt sa vytvorí do pamäte. Do premennej, ktorá má uchovávať tento objekt Dog sa neuloží priamo objekt Dog, ale iba jeho odkaz (referencia, adresa) na miesto kde v pamäti sa nachádza.

Príklad

Dog dog = new Dog();

Čo sa stalo? V halde sa vytvoril nový objekt typu Dog a jeho adresa sa uložila do premennej dog.

Ak by som vytvoril novú premennú napríklad dog2 a do nej by som priradil dog, čo sa stane?

Dog dog2 = dog;

Stane sa to, že do dog2 sa uloží to, čo je v dog. Čo je teraz v dog? Je tam adresa na ten prvý vytvorený objekt.

01 ulozenie objektu do pamate

Inak povedané premenná dog ukazuje na novo vytvorený objekt typu Dog v pamäti a potom aj dog2 ukazuje na ten istý objekt.

Krajšie by to bolo ak by sme použili String. Tak skúsme znovu ale trošku si to spravíme zložitejšie.

String name = "Jaro";
String surename = "Beno";
name = "Fero";
surename = name;

V prvom kroku sa vytvorí objekt Jaro a jeho adresa sa priradí (uloží do premennej name).

02 praca s pamatou

V druhom kroku sa vytvorí objekt Beno a jeho adresa sa uloží do premennej surename.

03 praca s pamatou

V treťom kroku sa vytvorí objekt typu String s hodnotou Fero a jeho adresa sa uloží do premennej name. Premenná name má v sebe uloženú adresu na Fero. Teda predchádzajúca hodnota, čo bola adresa na objekt Jaro sa zmazala a nahradila adresou na objekt Fero. Tým pádom, žiadna premenná už neukazuje na objekt Jaro. Tento objekt teda už nie je viac použiteľný v našom programe. Teraz „visí“ v pamäti. Java sama spúšťa takzvaný garbage collector (zberač smetí), ktorým z pamäti uvoľňuje presne takéto objekty, na ktoré už v programe neexistuje referencia – žiadna premenná v programe neukazuje na tento objekt.

04 praca s pamatou

V kroku číslo 4 do premennej surename priraďujeme tú hodnotu, ktorá sa nachádza v premennej name a tou hodnotou je adresa na objekt Fero.

05 praca s pamatou

Teraz obidve premenné ukazujú na ten istý objekt alebo inak povedané obidve premenné uchovávajú adresu na objekt typu String s hodnotou Fero. Objekty Jaro a Beno sa potom vymažú z pamäte automaticky.

Čo to všetko pre nás znamená? Prečo sa tomu tak venujeme?

Je to preto, aby sme si rozmysleli kde posuniem adresu na objekt a čo sa môže stať.  Čo ak posuniem premennú name do metódy? Čo sa môže stať? Nemusí sa stať nič, ale môže sa stať to, že v metóde sa tam súčasný objekt môže zmeniť.

Príklad:

Dog dog3 = new Dog("T-REX");
System.out.println(dog3.getName());

Vytvoríme si psa s menom T-REX. Vytvoril sa v pamäti. Jeho adresa sa uložila do premennej dog3. Teraz vypíšem jeho meno na konzolu. Na konzole sa objaví T-REX.

Dog dog3 = new Dog("T-REX");
System.out.println(dog3.name);
workWithDog(dog3);
System.out.println(dog3.name);

Teraz som zavolal metódu workWithDog a do nej som vložil dog3. Čo som spravil? Spravil som to, že hodnotu z dog3 som posunul do vnútra metódy. Teda som tam posunul adresu. Ak by som pracoval s primitívnym typom, tak by som do vnútra metódy posunul hodnotu. Teraz som posunul adresu.

Pozrime sa na metódu:

static void workWithDog(Dog dog){
    dog.name = "Rex";
}

V metóde sa objektu dog mení meno na Rex. Čo sa stane?

06 praca s pamatou
Dog dog3 = new Dog("T-REX");
System.out.println(dog3.name);
workWithDog(dog3);
System.out.println(dog3.name);

Výpis tohto kódu bude nasledovný: najprv sa vypíše T-REX a potom Rex. V tomto príklade vypisujem meno objektu dog3. Raz je T-REX a po zavolaní metódy sa zmenil na Rex. Ak by sme niečo podobné chceli spraviť s primitívnym typom, tak vonkajšia premenná sa nám nezmení.

int num = 41;
System.out.println(num);
workWithInt(num);
System.out.println(num);

Výstup na konzole bude dvakrát vypísané číslo 41.

Najnovšie články

The post Ako Java pracuje s pamäťou pri referenčných typoch appeared first on JaroslavBeno.

]]>
http://jaroslavbeno.sk/ako-java-pracuje-s-pamatou-pri-referencnych-typoch/feed/ 0
Programovací jazyk Java – plán štúdia http://jaroslavbeno.sk/programovaci-jazyk-java-plan-studia/?utm_source=rss&utm_medium=rss&utm_campaign=programovaci-jazyk-java-plan-studia http://jaroslavbeno.sk/programovaci-jazyk-java-plan-studia/#respond Mon, 11 May 2020 14:26:24 +0000 http://jaroslavbeno.sk/?p=469 Rozhodol si sa študovať programovací jazyk Java, alebo o tom uvažuješ. Pozeral si si pracovné ponuky pre Java programátora, alebo si našiel zložitejší návod ako napísať Java web aplikáciu. Natrafil si na veľké množstvo pojmov, ktorým nerozumieš. Máš v tom zmätok a nevieš, čo sa naučiť, alebo čo sa naučiť ako skôr. V tomto článku Programovací jazyk Java – […]

The post Programovací jazyk Java – plán štúdia appeared first on JaroslavBeno.

]]>
Rozhodol si sa študovať programovací jazyk Java, alebo o tom uvažuješ. Pozeral si si pracovné ponuky pre Java programátora, alebo si našiel zložitejší návod ako napísať Java web aplikáciu. Natrafil si na veľké množstvo pojmov, ktorým nerozumieš. Máš v tom zmätok a nevieš, čo sa naučiť, alebo čo sa naučiť ako skôr. V tomto článku Programovací jazyk Java – plán štúdia sa ti budem snažiť pomôcť urobiť si prehľad v pojmoch a naplánuješ si štúdium programovacieho jazyka Java a pridružených technológií, ktoré sa ti budú hodiť.

Základy jazyka Java

Na úvod si musíš naštudovať základy jazyka Java. Potrebuješ vedieť, čo je to trieda, čo je to metóda, čo je premenná, ako sa píšu príkazy, čo je terminál, výpis, podmienka, cyklus, ako pracuje Java s pamäťou a iné základné znalosti. S týmito základmi zvládneš napísať jednoduché programy. Pozri si pár príkladov na precvičenie aj s ukážkou riešenia v článku Programovacie úlohy na precvičovanie – úroveň nízka.

Pokročilejšie časti jazyka

Po zvládnutí základov pristúpiš ku pokročilým častiam jazyka ako sú výnimky, OOP (objektovo orientované programovanie), práca s Java triedami, rozhrania, rekurzia, funkcionálnym programovaním pomocou Lambda výrazov, stream API, anotácie, reflexia, kolekcie, generické programovanie a podobne.  Pozri si pár úloh na precvičenie v článku Programovacie úlohy na precvičovanie – úroveň stredná a v článku Programovacie úlohy na precvičovanie – úroveň vysoká.

SQL

Veľké množstvo aplikácií pracuje sa databázami. Aby si aj ty v aplikáciách vedel správne používať databázu, musíš sa naučiť základy jazyka SQL.

Pomocou SQL príkazov vieme z databázy čítať dáta, zapisovať dáta, meniť dáta, alebo ich mazať.

Keď budeš študovať ako pracovať v aplikáciách s databázami, stretneš sa s pojmom CRUD. To nie je nič iné ako create, read, update a delete. Teda základné operácie.

Maven

Maven je nástroj, ktorý budeš používať na buildovanie a manažovanie svojich javovských projektov. Jednoducho si dokážeš pridávať do projektu knižnice a frameworky. Pomocou jedného príkazu si celý projekt skompiluješ, zbuilduješ a spustíš na serveri.

Maven je zároveň najpoužívanejší tool s týmito možnosťami. Vedomosti, ktoré sa tu naučíš budeš využívať pri skoro každom javovskom projekte. Stačí, ak si otvoríš pracovné príležitosti pre Java programátora a Maven tam s veľkou pravdepodobnosťou bude požadovaný.

Git

Pri práci na projektoch musíš mať prehľad o zmenách v tvojom kóde. V priebehu času budeš mať určite množstvo verzií svojho programu. Ako programátor budeš pracovať v tímoch. Každý bude pracovať na svojej časti programu a potom si tieto svoje verzie zlúčite dokopy.

Nie len na tieto úlohy budeš používať Git. Git je najrozšírenejší verzionovací nástroj a určite stojí za to naučiť sa ho používať.

Java Web Technológie

Všetky web technológie v Jave sú postavené na takzvaných servletoch. Potom sa od tejto technológie odvíja množstvo iných technológií a pojmov. Pri štúdiu sa stretneš napríklad s pojmami ako JSP, JSTL, EL, MVC, REST a podobne.

JPA a Hibernate

V Jave pracuješ s objektami a v databáze s tabuľkami. Ako ich navzájom prepojiť tak, že sa ti automaticky naplní java objekt dátami z pridruženej databázovej tabuľky? Použiješ JPA (java persistance api) a Hibernate framework.

Spring Framework

Aby sa ti zo všetkým pracovalo jednoduchšie a chceš preskočiť pár krokov v príprave aplikácie, chceš mať po ruke množstvo pomocných technológií, tak určite siahneš po Spring frameworku.

Kde sa to všetko naučíš?

Je viacero tutoriálov a kurzov najmä v angličtine. Ak ale chceš kurzy v slovenčine tak som pripravil niekoľko kurzov, ktoré obsahujú všetko, čo som v tomto článku spomínal a ešte oveľa viac. Každý kurz obsahuje domáce úlohy na precvičovanie. Ak máš záujem o kurzy pozri si si zoznam na stránke learn2code.

Záver

Dúfam ti tento článok Programovací jazyk Java – plán štúdia pomohol a našiel si v ňom množstvo užitočných informácií. Ako sa ti článok páčil? Čo ti chýbalo? Daj mi vedieť do diskusie pod článkom a zváž aj zdieľanie článku.

Ďakujem.

Ja som Jaro a my sa vidíme ak Boh dá pri ďalšom článku.

PS: podobnú tému som spracoval aj vo video forme na svojom YouTube kanály JaroslavBeno.

Najnovšie články

The post Programovací jazyk Java – plán štúdia appeared first on JaroslavBeno.

]]>
http://jaroslavbeno.sk/programovaci-jazyk-java-plan-studia/feed/ 0