fbpx

Java programozás kezdőknek

Minden hosszú út során az egyik legnehezebb dolog az elindulás, és ez igaz a Java programozás kezdőknek szóló tananyagokra is. Elkezdeni és kitartani nehéz. Akkora hegynek nézünk elébe, hogy sokszor elszédít minket, és szinte bátorságunkat szegi az önbizalomhiány, bizonytalanság, a sejthető nehézségek okozta szorongás.

Mit tehetünk ellene? Szembenézünk vele, a szorongás óriási hegyét racionális alapon kisebb, meghódítható dombokra, félelmekre bontjuk, majd egyesével bevesszük mindet, tudással, tanulással, bátorsággal.

„Az elégedett és boldog élet kulcsa a tanulás és az öröm összekapcsolása. Az öröm nélküli tanulás kimerít, a tanulás nélküli öröm pedig rendkívül unalmas.”

Richard David Precht

Ízelítő mai blogunk tartalmából:

  1. Mi az a Java?
  2. Miért pont a Java?
  3. Mi az a Java Virtuális gép?
    1. Classloader
  4. Garbage collector
    1. Execution engine
  5. Mik azok a változók?
  6. Mik azok az operátorok?
  7. Mik azok a vezérlő szerkezetek?
  8. Hogyan tanulhatsz még hatékonyabban?
  9. Teszteld a tudásod!

Java programozás kezdőknek? Vágjunk bele!

Mi az a Java?

Ha csak egyszer is rákerestél a Java nyelvre korábban, akkor már kívülről fújod, hogy objektum orientált, platformfüggetlen, robusztus, általános célú, magas szintű programozási nyelv. Szintaxisa hasonlít a C-re és C++-ra. Az objektumorientáltság egy nagyon fontos része a nyelvnek, mely annyit tesz, hogy az objektumok szerint csoportosít és nem az objektumok által elvégzett feladatok alapján. Az objektumok változókból és a hozzájuk tartozó metódusokból felépülő egységek. Lényegében a valódi életünkben is objektumokkal vagyunk körbe véve (pl. autók) és ezeknek is vannak változói (pl. sebességük). Ezért áll közel az emberi gondolkodáshoz is a Java programozás, hasonlóképp kell gondolkodni ebben is.

Miért pont a Java?

A Java nem csak egy programozási nyelv, de egy ún. platform és middleware is. A middleware egy olyan szoftvert jelent, ami a számítógépes OP rendszerek mögött működő alkalmazás, és feladata az adatkezelés és kommunikáció különböző alkalmazások között. A Java SE pedig egy népszerű platform, mely tartalmazza a JVM-et (Java virtuális gépet, ami lényegében a futtatókörnyezet), és a Java package-eket, könyvtárakat. Nem csak asztali és kézi számítógépeken, de még Android platformra is egy Java szerű nyelvben fejlesztenek, így méltán lett híres és népszerű. Toplistás, vezető programozási nyelv évek óta, akármilyen felmérést is nézel.

Java programozás kezdőknek? - kezdjük az alaplapnál
Neked milyen géped van?

Mi az a Java virtuális gép?

A JVM működését le lehet írni néhány szóban és több ezer oldalban is. Igen összetett feladatokat végez, nagyon izgalmas. Legfőbb feladatai közé tartozik a Java bájtkód futtatása, melyet classloader, garbage collector és execution engine segítségével végez. Nézzük meg egyesével, mik is ezek!

Classloader

A classloader feladata a bájtkód előkészítése, betöltése a JVM-be. Része a futtatókörnyezetnek. A Java futtató környezet indulásához 3 classloadert használ:

  1. bootstrap classloader
  2. extensions classloader
  3. system classloader

Garbage collector

A garbage collector a megfelelő memóriakezelés egy formája. Célja, hogy a memóriában levő, már nem használatos objektumokat eltávolítsa, helyet és kapacitást szabadítva fel ezáltal.

Jelenleg a G1 GC, azaz Garbage First Garbage Collector az aktuális, melyet először a Java 7-ben vezettek be kísérleti jelleggel, és Java 9 óta ez az alapértelmezett garbage collector. Ezt főleg több processzoros, sok memóriával rendelkező eszközökre tervezték. Ennek működéséről részletes, animációval ellátott előadást tartott András tavaly a Schönherz bázison, jó szívvel ajánlom figyelmedbe YouTube csatornánkat, ahol ezt teljes hosszában meghallgathatod.

Execution engine

Ez pedig a végrehajtó motor.

Class loader
A kép forrása: javatutorial.net/jvm-explained

Mik azok a változók?

A változók adatok tárolására szolgáló speciális adatelemek, melyek mindegyike egy azonosítóval van ellátva. Java-ban a változók adattípusát létrehozásukkor mindig meg kell adni, és ez egyben megszabja azt is, hogy milyen értékeket vehet fel a változó. A változó nevét érdemes beszédes formában megadni, hogy később javítsa a kód olvashatóságát. Minden változónak van egy érvényességi köre is, amely megadja, hogy milyen határokon belül érvényes. Az, hogy hol vesszük fel a változót egyértelműen meghatározza azt is, hogy mettől-meddig érvényes.

Mik azok az operátorok?

Lényegében hasonlók, mint a matematikában a műveleti jelek, segítenek abban, hogy különböző műveleteket hajthassunk végre a programunkban, pl. összeadhatunk vagy kivonhatunk egymásból két változót. Megkülönböztethetünk:

  1. relációs: kisebb, nagyobb, egyenlő
  2. logikai: és, vagy, tagadás
  3. aritmetikai: + , – , * , / , %
  4. értékadó: változó = kifejezés

és egyéb operátorokat.

Mik azok a vezérlő szerkezetek?

Már tudjuk, hogy vannak tehát változóink és azokkal mindenféle műveleteket végezhetünk. A vezérlő szerkezetek abban segítenek minket, hogy ezeknek a műveleteknek a végrehajtását vezéreljük. A programunk helyes működését végül igazából az adja, hogy a megfelelő sorrendben a megfelelő műveleteket a megfelelő számban hajtatjuk végre a géppel.

A vezérlő szerkezeteknek három fő típusa ismert:

  1. döntéshozó utasítás: egy feltételtől függ, hogy adott utasításokat végrehajtsunk vagy ne
  2. elágaztató utasítás: egy feltételtől függ a folytatás módja
  3. ciklusszervező utasítás: egy feltételtől függően többször végrehajtásra kerül az adott programrészlet

Ezeket aztán akár egymással, akár önmagukkal kombinálva rengeteg lehetséges út alkotható. Más nyelvekben találkozhatsz még a goto utasítással, de a Java ezt nem támogatja, mert sok esetben túl szövevényes, átláthatatlan kódot eredményezhetne és ez szándékainkkal ellentétes a mindennapokban.

További programozással kapcsolatos cikkek: Programozás

Programozás tanulás monitor előtt ülve
Te kitől szoktál kérdezni, ha elakadsz?

Hogyan tanulhatsz még hatékonyabban?

Sokan a gyakorlatban hisznek, mások a pontos elméleti alapokkal szeretik kezdeni a tanulást. Tapasztalatunk, hogy mindkettőre szükség van, lehetőleg egyszerre, egymás mellett. Ha egyedül nehézkesen haladsz otthon a Java nyelv tanulásával, rengeteg kérdésed merül fel, melyekre nem találod a választ, érdemes lehet átolvasnod képzésajánlónkat: Programozás alapjai tanfolyam

Ahhoz, hogy megtanulj programozni, nincs másra szükséged, mint türelemre, kitartásra és alap logikai készségekre. De a türelem a legfontosabb mind közül. Merthogy ez nem fog sikerülni egyik napról a másikra. Időre van szükség ahhoz, hogy megemészd és magadévá tedd a tanultakat, és sokszor csak napokkal, sőt hetekkel később „esik le” egy-egy megoldás. Ezt ki kell tudni várni.

„Az emberek úgy gondolják, hogy a számítástechnika a zsenik művészete, de a valóság az ellenkezője: sokan csinálnak olyan dolgokat, amelyek egymásra épülnek, mint mini kövekből a fal.”

Donald Kunth

Milyen tanulástechnikákat ismersz?

Sokat tudsz javítani a tanulási hatékonyságodon, ha megfelelő tanulási körülményeket teremtesz magadnak. Programozni tanulni nem lehet 20 perc alatt. Szükség van összefüggő időre, hogy legyen lehetőséged elmélyedni abban, amit csinálsz. Elcsípni a logikát és tovább gondolni. Ehhez nyugodt körülményekre és időre van szükség. Ráadásul bele kell gondolnod abba is, hogy soha nem fogsz a végére érni. Folyamatosan tanulnod kell, mert olyan sebességgel halad a technológia, hogy leállnod soha nem szabad, mert nem fogsz tudni lépést tartani a munkádban. Épp ezért különösen fontos az, hogy megfelelő tanulási szokásokat alakíts ki, hiszen jó eséllyel amíg aktív munkát végzel, ezt a szokást fogod ismételni nap nap után.

Hozzászólásban mesélj nekünk:

  • Te hogyan tanulsz?
  • Kézzel írt jegyzeteket készítesz?
  • Könyvből vagy app-okból tanulsz szívesen?
  • A tutorialokra esküszöl vagy a mentorprogramokra és kurzusokra?
  • Milyen tapasztalataid vannak?

Teszteld a tudásod!

Ha az itt olvasottak alapján szívesen felmérnéd, mit sikerült eddig elsajátítanod a Java programozás kezdőknek tananyagokból, teszteld a tudásod itt: Programozási alapfogalmak

Ha tetszett, oszd meg!

“Java programozás kezdőknek” bejegyzéshez 1 hozzászólás

Szólj hozzá!