Adatok bekérése Java nyelven

Adatok bekérése Java nyelven

Ebben a témában: Java Programozas

Szinte minden program kér be adatokat a felhasználótól a működése során. Néha elképzelhető, hogy nincs adatbekérés, ekkor a program minden elindításkor pontosan ugyanazt az eredményt fogja előállítani. Ezek a programok inkább gyakorlás, tanulás során fordulnak elő. Az adatok bekérésével sokkal interaktívabb és érdekesebb programokat lehet készíteni, épp ezért most ezt szeretném megmutatni Java nyelvben.

 

 

Kezdjük talán ott, hogy honnan tud egy program adatokat beolvasni

A legtipikusabb eset, hogy használunk egy alkalmazást vagy egy weboldalt és a megfelelő helyekre beírjuk az adatokat, például egy keresett szöveget, email címet, jelszót, stb… Egy másik lehetséges megoldás, amikor a szükséges adatokat a program különböző fájlokból olvassa ki. Az első eset tipikusan felhasználói adatok bekérésére vonatkozik, míg a fájlokban lévő adatokat inkább maguk a programok állítják elő és olvassák.

Amit mi most meg fogunk nézni, az az első eset lesz, de ebben a blogcikkben nincs lehetőségünk egy teljes weboldalt felépíteni. Épp ezért a mi programunk a fejlesztői környezeten (Eclipse, IntelliJ, NetBeans, …) keresztül fog bekérni adatokat. Ha még nem találkoztál a fejlesztő környezet kifejezéssel, akkor előbb érdemes egy könnyebb feladattal kezdeni, én a Hello World alkalmazást javaslom.

 

Hogyan tudunk adatokat bekérni?

Szerencsére, mint oly sok mindenre, a Java-ban erre is létezik egy előre elkészített lehetőség, amit nekünk „már csak” használni kell. Sőt, nem is csak egy fajta módszer létezik adatok beolvasásra, hanem több és mindegyiknek megvan az előnye, hátránya. Így több fajta lehetőség közül is tudunk választani.

A bemutatott megoldás a Scanner nevű könyvtár alapszintű használata lesz. A Scanner több helyről is tud adatokat beolvasni, így egy sokrétű megoldás, bár van néhány gyengepontja.

Amit még szeretnék kiemelni, hogy most nem nézünk meg minden részletet aprólékosan, mert feltételezem, hogy inkább még csak ismerkedsz a programozással, ezért néhány dolgot lehetetlen lenne most írásban elmagyarázni. Próbáljunk meg fókuszálni a mechanizmusra, a fontos kódsorokra és megérteni, hogy pontosan milyen utasításokkal tudunk adatokat beolvasni. Viszont a feladat teljes körű megértéséhez érdemes ismerni a Függvények fogalmát és a Programok alapvető működését. Ha ezekkel tisztában vagy, akkor viszont vágjunk bele!

 

A feladat

A feladat legyen az, hogy kérjük be a felhasználó nevét, születési évét, hónapot és napot majd jelenítsük meg ezeket az értékeket a megfelelő formátumban.

 

A megoldás

Először megmutatom a teljes megoldást, utána pedig megpróbálom soronként elmagyarázni.

Read More

Java Tanfolyam 2.2: Elindult a jelentkezés!

Ebben a témában: Java Programozas

 

Az első kedvezményes jegyet már meg is szerezték, ezért ha Te is szeretnél csatlakozni, akkor csekkold a részleteket a Java Tanfolyam oldalán!

Ha pedig belevágnál, akkor kattints a JELENTKEZÉS Gombra és vesd bele magad a Tanulásba!

 

Viszont ne felejtsd el, hogy jelentkezés CSAK EZEN A HÉTEN van, ezért legkésőbb Szombaton 23:59-ig tudsz csatlakozni!

Java Tanfolyam 2.2

Ebben a témában: Java Programozas

Azt hiszem bátran kijelenthetem, hogy egy mozgalmas évnek a vége felé közeledünk lassan, de még nem szeretnék hátradőlni…

 

Az előző Java Tanfolyam, mind a diákjaim, mind számomra sikeres volt és pont a héten fog véget érni. A 2.1-es Java Tanfolyamon kiugró eredmény született, ugyanis majdnem 50%, azaz 4 ember érte el azt a szintet, hogy már az állásokat tudják nézegetni. Persze még vár rájuk feladat az álláskereséssel és az interjúkkal kapcsolatban, de ebben is fogom őket támogatni. Ezen felül pedig közkívánatra néhány korábbi hallgatómmal el fog indulni egy haladó Tanfolyam is, aminek nagyon örülök, itt még egyelőre tervezési fázisban vagyunk.

Az elmúlt pár hétben sokat beszéltem egy új irányvonalról, a WordPress Tanfolyamról, viszont többen is kérdeztétek, hogy indul-e még idén Java Tanfolyam?

 

A jó hírem, hogy igen, indul még egy idei utolsó Java Tanfolyam! 🙂

 

 

A Java Tanfolyam oldalát még csinálom a háttérben, itt még egy pár nap türelmeteket szeretném kérni, de nagyobb változások nem várhatóak az előző verzióhoz képest.

Sőt, még egy jó hír, hogy árváltozás sem lesz!

A 2021-ben induló Java Tanfolyamoknál mindenképp lesz áremelkedés, így ez az utolsó Java Tanfolyam, amin még alacsonyabb áron tudtok részt venni.

 

 

Ezek most talán a legfontosabbak, a Java Tanfolyam oldala pedig pár napon belül újra elérhető lesz! Remélem, hogy nemsokára találkozunk!

Java Tanfolyam 2.1: Bónuszok

Ebben a témában: Java Programozas, Onfejlesztes

Múlt héten megismerted a Java Tanfolyamom következő, 2.1-es verzióját. Láthattad, hogy maga a Tanfolyam egy sajátos rendszerben épül fel, hiszen nem várom el tőled, hogy egész nap az iskolapadban (vagy mostanában egy chatszobában) ülj, inkább az önálló feladatmegoldásra, önálló gondolkodásra ösztönözlek. A személyes oktatás pedig inkább többször, de rövidebb, 1,5-2 órás alkalmakon történik. Ennek oka, hogy a programozási képességek legjobban az önálló gyakorlás által tudnak rögzülni. Ez mellett persze én is aktívan segítek a fejlődésben, hiszen nem csak akkor találkozunk, ha új anyagokat kell venni, bármikor elérsz az órákon kívül is (Skype, email, Facebook, telefon), lesznek közös feladatmegoldások, sőt csoportos feladatok is! Ezek mellett pedig összeállítottam egy egyedi ajándékcsomagot is a Tanfolyam mellé, ami nagyon nagy segítségedre lesz…

 

  1. A saját Tanulásom és karrierem története

Igen, velem is előfordult, nem egyszer, nem kétszer, hogy semmit sem értettem abból, ami éppen a képernyőn történik, vagy épp nem történik. De hogyan jutottam el a Programozás segítségével ebből az állapotból egészen odáig, hogy több kisebb, 5-7 fős csapatot vezettem egy nagyobb SW projekten belül, mint technikai vezető majd megalapítottam a saját cégemet?

Bizony nem volt mindig könnyű, főleg az elején. Sok kétségem volt afelől, hogy a tudásom mennyire megbízható, mennyire lehet értékes egy cég számára. Rengeteget segített, amikor megkaptam az első állásomat. Emlékszem, mikor felhívott a HR-es hölgy, hogy szeretnének felajánlani egy pozíciót. Leírhatatlan örömet éreztem, éreztem a megkönnyebbülést, hogy akkor most már jó irányba tart a karrierem. Tudtam, hogy még innen is rengeteget kell tanulnom, de szerencsére nagyon jó mentorom volt és nagyon jó csapatba is kerültem, ezért nem szenvedésnek éltem meg a munkám, sokkal inkább fejlődési lehetőségnek és kihívásnak. Bizonyítani akartam…

Az első Bónuszban a saját fejlődésemet és karrierutamat fogod részletesen megismerni. De ami ennél is jobb és tudom, hogy ez fog a legjobban érdekelni, konkrét számokat is láthatsz majd a céges fizetéseimről.

 

  1. Produktivitási és Mindset Tréning

Beszéltünk már róla, hogy egy Tanfolyamot elkezdeni könnyű, sikeresen befejezni viszont életed talán legnehezebb feladata lesz. Ennek számos oka van: Egyrészről maga a Tanfolyam hossza is olyan, hogy történhetnek váratlan események, megbetegedések vagy bármi olyan, amire most talán még nem is gondolsz. Ezek ellen nehéz védekezni, de van egy másik aspektus is, amire viszont lehet készülni!

Sokan már elfelejtették mit is jelent tanulni: Legtöbb embernek a tanulásról rögtön az út vége jut az eszébe, amikor már csak le kell aratni a babérokat (ez leginkább a média által kialakított hamis képnek köszönhető, amiben csak a sikeres, győztes embereket mutatják). De idáig el is kell ám jutni, ami mentálisan nagyon fárasztó és ha nincs meg hozzá a megfelelő környezet, a megfelelő rendszer, akkor sokszor lehetetlen.

A következő Bónuszban ezt a kérdéskört fogjuk körüljárni. Hasznos tanácsokat fogsz kapni azzal kapcsolatban, hogy mit tehetünk azért, hogy egy adott feladat ne 4-6 órát, hanem csak 1-2 órát tartson. Ezzel kilőjük a produktivitást az ég felé, növelve az esélyét, hogy nem csak elkezded, de sikeresen be is fejezed a Tanfolyamot. Hogyan tudsz kialakítani egy működő Rendszert, aminek köszönhetően a Tanfolyam teljes ideje alatt fent tudod tartani a fókuszt és hogyan kell átalakítani a gondolkodásmódod, hogy ne a kifogásokat, hanem a megoldásokat keresd?

Ezeket az extra előadásokat egy régi barátom, Széphegyi Csaba fogja tartani, körülbelül havonta 1 alkalommal a szerdai napokon (a konkrét időpont jóval előre be lesz jelentve). Ő profi pókerjátékos vonalon kezdte el felépíteni magát (ahol a hatékonyság központi kérdés, nem csak a tanulás, de a napi munka során is), majd ebből váltott tanácsadói irányvonalra. Ennek már közel 10 éve, így rengeteg tapasztalat áll mögötte, amiből a legjobbakat fogja veletek is megosztani.

 

  1. Java KisOkos – Állásinterjú feladatok és megoldások

Egy tipikus programozói állásinterjú általában két részből áll: Először egy beszélgetés történik, ahol lehetőség van megismerni, meghallgatni a jelöltet és a cég is be tudja magát mutatni. A második rész pedig általában teszt jellegű, aminek a célja, hogy a cég felmérje a potenciális munkavállaló technikai képességét. Ez többféleképpen is történhet, általában több kérdésből álló feladatsor van, ami rövid logikai és programozási feladatokat tartalmaz. Ezek azonban közel sem olyan változatosak, mint a legtöbb ember hinné…

Még az egyetem ideje alatt nekem is volt egy olyan időszakom, amikor 2-3 hónapig rendszeresen, heti szinten jártam állásinterjúkra. A kezdetben ezek nem sikerültek túl jól, de minden interjúból tanultam valamit, levontam a következtetéseket. A következő alkalmakra pedig egyre több tapasztalattal mentem, így egy idő után elkezdtek ismétlődni a kérdések. Ezen időszak végére több lehetőség közül is választhattam, bár irónikus módon rá is jöttem, hogy még túl korai heti 40 órában dolgoznom, előbb az egyetemet szeretném befejezni.

Ezzel csak azt szeretném érzékeltetni, hogy a technikai kérdéseket be lehet gyakorolni és a 3. Bónusz pontosan ehhez nyújt segítséget. Összeszedtem 10 oldalban a tipikus technikai interjúkérdéseket és a hozzájuk tartozó részletes leírást, amik mellé természetesen a forráskódot is mellékelem. Valószínűleg nem pontosan ezeket a kérdéseket fogod megkapni, de ha ezeket megnézed és 100%-osan megérted, akkor jó esélyekkel fogsz indulni.

 

  1. algoexpert.io: Interjú felkészítő oldal

Read More

Ha már eldöntötted: Java Tanfolyam 2.1

Ebben a témában: Java Programozas, Onfejlesztes

A világ épp átalakulóban van: Lehet, hogy nem akarod vagy nem tudod már folytatni azt a munkát, amit eddig. Talán épp most jött el az idő, hogy alakíts a dolgok menetén! Azt már bemutattam neked, hogy milyen lehetőségek és milyen tendenciák vannak most a Programozásban, de miért vagy itt ezen az oldalon és hogyan tudok neked Én segíteni?

 

 

Az elmúlt 1,5 hétben számos kérdést megnéztünk.

Az első részben megnéztük, hogy mi okozza a gazdasági nehézségeket. Azt is leírtam, hogy a kialakult helyzet természetesen borzasztó, de legtöbbet akkor tehetsz, ha megpróbálsz előre tekinteni. Megpróbálsz előre tekinteni és nyertesként kijönni ebből a helyzetből. Ezt persze leírni sokkal könnyebb, mint megvalósítani, de ha fókuszált tudsz maradni és ki tudod használni a leállás előnyeit, akkor minden esélyed megvan.

A második részben bemutattam, hogy a programozást hogyan lehet átültetni az irodai környezetből az otthoni munkavégzésbe. Ezen felül a klasszikus munkamodell mellett akár szabadúszóként is el tudsz kezdeni dolgozni, ami egy extra biztonságot jelentő harmadik lábnak is tekinthető.

A harmadik részben pedig az induláshoz szükséges segítséget adtam meg neked. Hogyan érdemes megközelíteni a karrierváltást, hol lehet hiteles információkat kapni a programozásról és mit jelent a programozás technikai szinten? Hogyan érdemes mentálisan készülni egy ilyen képzésre és milyen kialakított Rendszerben lehet sikeresen elvégezni egy ilyen képzést? Ha pedig egy alapos körüljárás után véglegesen eldöntötted, hogy belevágsz, akkor milyen képzések közül választhatsz?

Én is évek óta tartok hasonló tréningeket, oktatásokat. Az általam kidolgozott oktatási modell mindig is az Online tanulásra épült és évek óta finomítom, most pedig elhoztam neked a következő verzióját. A nemsokára induló új, 2.1-es Tanfolyam közel azonos az előző, idén Januárban indult verzióval, de mégis készültem néhány fontos változással.

 

 

Az előző verzió: Java Tanfolyam 2.0

Mikor az előző Tanfolyamra készültem, akkor még két programozási nyelvvel szerettem volna elindulni: Java és C. Ez két különböző irány lett volna, de mind a kettőre megvoltak a kellő előkészületek így izgatottan vártam az indulást. Sok mindent befolyásolt, hogy nem 1 nyelvet oktatok 2 csoportnak, hanem 2 nyelvet 1-1 csoportnak. Számos olyan lehetőségről le kellett mondanom, amit egyértelműen ki tudtam volna használni, ha két csoport fut párhuzamosan.

Ezek után nagyon szomorú voltam, hogy a C nyelvű képzésemre nagyon alacsony volt az érdeklődés. Ezzel ellentétben a Java nyelvű Tanfolyamom 1 ember hijján teltházzal indult. Le kellett vonjam a következtetést, hogy bár nagyon szerettem volna, de a piaci igények nem engedték meg a C nyelvű Tanfolyam elindulását.

Megtanultam a leckét és idén Májusban már másképp tervezem az indulást!

 

 

Programozz Te Is – Online Java Tanfolyam 2.1!

Most pedig elérkezett az idő, végre itt van a Java Tanfolyam 2.1! Íme a legfőbb pontok röviden:

 

  • 1 programozási nyelv: JAVA
  • 2 csoport párhuzamosan: Válaszd ki a csoportodat, de ha lemaradtál volna vagy lenne még kérdésed, akkor gyere el a másik csoport órájára és hallgasd meg újra.
  • Teljesen online, nem kell elhagynod a lakásod, csak egy jó internetkapcsolatra lesz szükséged.
  • Kérdezz-Felelek nap: Minden szerda este konzultációs nap, mely nem kötelező: Itt új anyagot nem veszünk, de ha van kérdésed, akkor ezen a napon nyugodtan van idő átbeszélni.
  • Kis csoportos oktatás, maximum 6 fővel. Ennél a létszámnál még mindenkivel tudok foglalkozni, de már tudjátok egymást is húzni, egymást segíteni.
  • 0-ról indulunk és a Junior szintig fogjuk lefedni a Java programozási nyelv témaköreit.
  • 3 nagyházifeladat: 2 db egyszerű Java nyelvben, a 3. viszont már a Spring nevű keretrendszerre fog épülni.
  • Hang és videó anyag készítése az összes előadásról, amit csak az adott csoportnak teszek közzé. Így bármikor visszanézheted az órán elhangzottakat vagy pótolhatod a lemaradásod.
  • A hét első óráján új anyagrészt fogunk venni, a második óráján pedig csak gyakorlunk. Ezt a struktúrát követjük 20 héten keresztül így nem lesz zsúfolt a tananyag és lesz idő gyakorlásra is.
  • 5 hónapos tanfolyam, így lesz ideje kifejlődni a szükséges képességeknek.
  • 6 db értékes bónusz: Ezek segítséget fognak adni a Fókuszált Tanuláshoz, a későbbi Állásinterjúkhoz, de akkor is, ha szabadúszóként szeretnél elhelyezkedni.
  • 365 napos Garancia: Ha nem vagy megelégedve a Tanfolyammal és annak minőségével, akkor visszaadom a befizetett összeget. Így Te nem vállalsz rizikót, ha pedig nem lennél megelégedve a képzés minőségével, akkor érvényesítheted a Garanciád! Nem egy unalmas, 100x leadott prezentációt fogsz hallani, hanem egy magas minőségű oktatási tananyagot fogsz kapni.
  • Csak két párhuzamos csoport lesz, tehát a helyek korlátozottak.

 

 

Mennyibe fog mindez kerülni?

Read More

Egy ismeretlen Feladat megoldása

Ebben a témában: C Programozas, Java Programozas

Szeretném nektek megmutatni, hogyan érdemes nekiállni egy ismeretlen feladatnak. A legfontosabb, hogy nem szabad megijedni a feladat elolvasása után, mert általában ezeknek a leírásoknak nagyobb a füstje mint a lángja, azaz könnyebb őket megoldani mint gondolnánk. Általában egy vizsga vagy egy állásinterjú során nincs idő hosszabb programok készítésére, ezért ha már több mint 10-15 sort írtál és még messze a vége, akkor érdemes lehet elgondolkoznod, hogy nincs-e egy rövidebb megoldás.

 

 

A Feladat

Keresse meg a legkisebb közös többszörösét a 81 és 12-nek.

 

Ezt a feladatot az oktatásom során is fel szoktam adni, mikor már vettünk minden olyan részt, amivel meg lehet oldani. A kezdeti sokk után azonban csak kevés embernek sikerül egy jó megoldást készítenie. Nézzük meg tehát most lépésről-lépésre hogyan érdemes nekiállni ennek a feladatnak.

 

 

  1. Az első lépés, mi a feladat?

 

A feladat, hogy megtaláljuk két szám legkisebb közös többszörösét (LKKT), jelen esetben a 81-nek és a 12-nek. Mivel azonban mi egy jó programot akarunk csinálni, ezért egy olyan megoldást készítünk, ami minden számra működni fog!

 

 

  1. Mi az a legkisebb közös többszörös?

 

Általában a legtöbb vizsga vagy állásinterjú kérdésnek van egy központi része, amit ha nem tudunk, akkor szinte kizárt, hogy megoldjuk a feladatot. Ennek a valószínűségét sok gyakorlással tudjuk csökkenteni. Ha azonban valamit mégsem tudunk, akkor annak könnyen utána tudunk nézni (legalábbis otthon), de legrosszabb esetben ne féljünk egy kis segítséget kérni a velünk szembeülőtől. Ebből a szituációból hiszed vagy sem, de akár még jól is ki tudsz jönni. Ha a felvételiztető látja, hogy hogyan reagálsz egy ismeretlen helyzetre az nagyon pozitív is tud lenni, mivel a munkád elején valószínűleg több dolog lesz ismeretlen, mint amennyit már tudsz.

 

Hogyan tudunk utánanézni valaminek magunktól?

Használjuk a Google-t, keressünk rá arra a konkrét kifejezésre, amit keresünk, esetleg írjuk is be mellé a programozási nyelvet, amit használni szeretnénk és nézzük meg az első 3 találatot. Íme az eredmény: Google Találatok

 

Két szám legkisebb közös többszöröse az a legkisebb egész szám, amelyet mindegyik szám maradék nélkül oszt.

 

Például 2 és 3 esetében a legkisebb közös többszörös a 6, mert azt a 2 és a 3 is osztja. Azért nem a 12 a legkisebb közös többszörös, mert a 6 kisebb mint a 12.

 

 

  1. Programtervezés

 

Mielőtt vadul elkezdjük írni a forráskódot, előtte próbáljunk meg felállítani egy tervet, készítsünk egy tervrajzot a programunkhoz.

Ha általánosan gondolkozunk, akkor mi lehet tetszőleges két számnak az Elméleti legkisebb közös többszöröse? => Az 1, de csak akkor ha az 1-nek és az 1-nek keressük a legkisebb közös többszörösét.

Mi lehet a lehető Legnagyobb legkisebb közös többszöröse két számnak? => Ez a két szám szorzata, mert annak eredményét biztosan mind a két szám osztja maradék nélkül.

 

Rendben, van tehát egy programunk, ami bemenetként vár két egész számot, A-t és B-t, kimenetként pedig kiad egy 1 és A*B között egy számot, nevezzük C-nek. A definícióból tudjuk, hogy C-t osztva A-val a maradék 0 és C-t osztva B-vel a maradék szintén 0. Meghatároztuk tehát a programunk bemenetét, a programunk kilépési pontját és egy algoritmust, ami képes megtalálni az elvárt kimenetet.

 

 

  1. Programváz felépítése

 

Most, hogy megvan a tervrajzunk a megoldáshoz, kezdjük el felépíteni az alapokat. Először csináljunk egy dedikált függvényt a feladathoz, de csak a vázát írjuk le:

„… van tehát egy programunk, ami bemenetként vár két egész számot, A-t és B-t, kimenetként pedig kiad egy 1 és A*B között egy számot, nevezzük C-nek.”

 

int getLKKT(int numberA, int numberB)
{
      /** Local variables, Always Initialize */
      int numberC = 0;

 

            /** Program Code */

 

            /** Return */
            return numberC;
      }

Read More

Java és C Függvények

Függvények Használata

Ebben a témában: Alapok, C Programozas, Java Programozas

Többször beszéltem már a függvények használatának fontosságáról (többek között Programok működésének felépítése és Függvény és Változó nevek). De még nem beszéltem arról, hogy pontosan, hogyan is kell létrehozni illetve használni a függvényeket. Ez az egyik alapvető része a programozásnak, ezért következzen most egy rövid gyakorlati bemutatás.

 

 

Ez a bemutató érvényes mind a Java, mind pedig a C nyelvre, minthogy a függvények használata mind a két nyelvben ugyanúgy történik, de én most mégis egy rövid Java programban fogom végigvenni a lényeget.

 

Mielőtt rátérnék a gyakorlati részre, gyorsan nézzük meg, hogy elméletben mit is jelent egy függvény a programozásban?
Egy függvény nem más mint egy végrehajtható kódhalmaz, ami mindig ugyanazt csinálja, éppen attól függően, hogy milyen céllal hozták létre az adott függvényt. Tekintsünk a függvényre úgy mint egy fekete doboz, nem kell feltétlen ismernünk a tartalmát, van valamilyen bemenete és abból valamilyen módon előállítja a kimenetét. Ezt a dobozt (a függvényt) bárhonnan fel lehet használni, meg lehet hívni. Egy ilyen függvényhívás során, a függvényben lévő kódhalmaz végrehajtódik. A függvények célja nem más, mint a program egyes részeinek feldarabolása. Mintha egy könyv tartalmát fejezetekbe osztanánk fel, úgy osztjuk fel a programot különböző függvényekbe. Illetve mivel egy függvényt többször is meghívhatunk, ezért a program egy fontos részegységét elég egyszer lekódolni és azt utána tetszőlegesen sokszor felhasználhatjuk. Minden függvényhívás során ugyanaz a kód fog végrehajtódni, függetlenül attól, hogy a függvényt honnan hívták. Attól, hogy a függvény végrehajtása befejeződött, attól még maga program nem ér véget, hanem onnan folytatódik tovább ahonnan a függvény meg lett hívva. Két fontos lépés van:

  1. A függvényhívás helye
  2. A függvény tartalma

Read More