Java SE alapok
A képzés célja a Java nyelven történő programozás alapjainak elsajátítása, a Java API alapszintű megismerése. A képzés gyakorlati feladatokat is tartalmaz, ezek megvalósításához IntelliJ IDEA fejlesztőeszközt használunk.
- Bevezetés
- Java SE alapok handout
- Java történeti háttér
- Oracle JDK telepítése
- Több JDK egy gépen
- Java platform
- Maven
- Maven használata proxy mögött
- IDE
- Git használata az IDE-ben
- Feltöltés GitHubra
- Gyakori kérdések a Javaval kapcsolatosan
- Eszközkészlet összefoglalás
- Eszközkészlet gyakorló kvíz
- Kiírás és beolvasás konzolról
- Objektumok és attribútumok
- Metódusok
- Konstruktorok
- UML, példányok konzol íráskor/olvasáskor
- Bevezetés a Java osztályok használatába összefoglalás
- Bevezetés a Java osztályok használatába gyakorló kvíz
- Kódolási konvenciók
- SonarLint
- Literálok és lokális változók
- Kifejezések és utasítások
- Csomagok
- Java API
- JAR állomány
- Szöveges típus
- Sortörés kezelése
- Dátum és időkezelés alapok
- Bevezetés a vezérlési szerkezetekbe
- A nyelv építőkövei összefoglalás
- A nyelv építőkövei gyakorló kvíz
- Tömbök
- Parancssori paraméterek
- Tömbök tömbje
- Tömbök kezelése
- Lista
- Lista létrehozása
- Ciklusok fajtái
- Módosítás bejáráskor
- Debug
- Konstans értékek használata
- Math és Random osztály
- Bonyolultabb típusok összefoglalás
- Bonyolultabb típusok gyakorló kvíz
- Objektumok
- Bevezetés az attribútumok használatába
- Bevezetés a konstruktorok használatába
- Bevezetés a metódusok használatába
- Referenciák
- Kompozíció
- Kompozíció listával
- Részletesebben az osztályokról és objektumokról összefoglalás
- Részletesen az osztályokról és objektumokról gyakorló kvíz
- Projektfeladat - Tárgyaló nyilvántartás
- A feladatkiírás áttekintése
- A MeetingRoom osztály létrehozása
- Az Office osztály létrehozása
- A Controller osztály szerkezetének létrehozása
- Egyes funkciók kiszervezése külön metódusba a Controller osztályban
- A menüpontok által megvalósítandó funkciók a Controller osztályban
- A felhasználónak kiírandó üzenetek a Controller osztályban
- Az elkészült alkalmazás kipróbálása
- Literálok
- Egyszerű típusok
- Karakter
- Felsorolásos típus
- Operátorok
- Oszthatóság vizsgálata
- Típuskonverzió
- Egész és lebegőpontos számok
- Különbségek a típuskonverzió, boxing és String műveletek között
- Típusok és operátorok összefoglalás
- Típusok és operátorok gyakorló kvíz
- Unit tesztelés JUnit 4 használatával
- JUnit 5
- JUnit 5 assert metódusok
- JUnit 5 tesztesetek életciklusa
- JUnit 4 és JUnit 5 közötti különbségek
- Unit tesztelés JUnittal összefoglalás
- Unit tesztelés JUnittal gyakorló kvíz
- Vezérlési szerkezetek és az elágazás
- Ciklusok
- Haladó vezérlési szerkezetek
- Vezérlési szerkezetek összefoglalás
- Vezérlési szerkezetek gyakorló kvíz
- String alapok
- Konkatenáció
- Főbb String metódusok
- StringBuilder
- Szövegek elválasztása vesszővel
- Scanner
- Szöveg formázása printf-fel
- Részletesen a szöveges típusról összefoglalás
- Részletesen a szöveges típusról gyakorló kvíz
- Első kivétel
- További kivételek
- Kivétel a hívási láncban
- Kivétel kezelése
- Kivétel kezelése a hívási láncban
- Kivétel eldobása
- Kivételkezelés tesztelése JUnit 4 használatával
- Kivételkezelés tesztelése JUnit 5 használatával
- Fájl beolvasása
- Kötelezően kezelendő kivétel a hívási láncban
- Kivétel becsomagolása
- Fájlbeolvasás tesztelése JUnit 4 használatával
- Fájlbeolvasás tesztelése JUnit 5 használatával
- Fájl írása
- Fájl írásának tesztelése JUnit 4 használatával
- Fájl írásának tesztelése JUnit 5 használatával
- A finally ág
- Bevezetés a kivétel- és fájlkezelésbe összefoglalás
- Bevezetés a kivétel- és fájlkezelésbe gyakorló kvíz
- Összegzés tétele
- Számlálás tétele
- Szélsőérték keresés tétele
- Eldöntés tétele
- Szűrés
- Transzformáció
- Rekurzió
- Programozási tételek és egyéb algoritmusok összefoglalás
- Programozási tételek és egyéb algoritmusok gyakorló kvíz
- Projektfeladat - Elektronikus osztálynapló
- A feladatkiírás áttekintése
- A Subject osztály létrehozása
- A Tutor osztály létrehozása
- A MarkType enum létrehozása
- A Mark osztály létrehozása
- A School osztály létrehozása
- A SubjectResult osztály létrehozása
- A Student osztály létrehozása
- A ClassRecords osztály létrehozása
- A Controller osztály szerkezetének létrehozása
- A menüpontok által megvalósítandó funkciók a Controller osztályban
- Az elkészült alkalmazás kipróbálása
- Immutable objektumok
- JavaBeans objektumok
- Metódusok
- Értékmásolás szerinti paraméterátadás
- Metódus paraméterek és visszatérési értékek
- Változó hosszúságú paraméterlista
- Metódus hívások láncolása
- Metódusnév túlterhelés
- Statikus attribútumok és metódusok
- Attribútumok és metódusok összefoglalás
- Attribútumok és metódusok gyakorló kvíz
- Default és paraméter nélküli konstruktor
- Konstruktor túlterhelés
- Inicializátorok
- Konstruktorok és inicializátorok összefoglalás
- Konstruktorok és inicializátorok gyakorló kvíz
- Öröklődés
- Konstruktorok és az öröklődés viszonya
- Statikus és dinamikus típus
- Object ősosztály
- Attribútumok öröklődése
- Metódusok öröklődése
- Öröklődés összefoglalás
- Öröklődés gyakorló kvíz
- Absztrakt osztályok
- Interfészek
- Interfészekkel kapcsolatos szabályok
- Dependency inversion
- Interfészek és az öröklődés viszonya
- Default interfész metódusok
- Statikus interfész metódusok
- Absztrakt metódusok implementálása felsorolásos típusokban
- Állapotgép
- Absztrakt osztályok és interfészek összefoglalás
- Absztrakt osztályok és interfészek gyakorló kvíz
- Polimorfizmus
- Dinamikus kötés
- is-a has-a kapcsolatok
- Haladó OO elvek összefoglalás
- Haladó OO elvek gyakorló kvíz
- Kivételkezelés
- Saját kivétel
- Multi catch
- Try-With-Resources szerkezet
- Haladó kivételkezelés összefoglalás
- Haladó kivételkezelés gyakorló kvíz
- Projektfeladat - Könyvtárkatalógus
- A feladatkiírás áttekintése
- A LibraryItem interfész létrehozása
- A Validators osztály létrehozása
- A Book osztály létrehozása
- A CourseBook osztály létrehozása
- Az AudioBook osztály létrehozása
- A MusicAlbum osztály létrehozása
- A CatalogItem osztály létrehozása
- A SearchCriteria osztály létrehozása
- A Catalog osztály létrehozása
Az oktatóról
Viczián István vagyok, Java fanatikusként fejlesztek, oktatok, blogot írok, rendezvényeket szervezek és konferenciákra járok. A Debreceni Egyetemen végeztem programtervező matematikusként, jelenleg a Training360-nál tartok oktatásokat. 1998 óta foglalkozom objektumorientált programozással és szoftverfejlesztéssel, kiemelt szakterületem a Java és Java EE alkalmazásfejlesztés. Vezető fejlesztőként, architektként dolgoztam/dolgozom kormányzati, banki, telekommunikációs és energetikai fejlesztési projektekben. Szakmai blogot is írok JTechLog néven. Szabadidőmben sokat túrázok, próbálom felfedezni Magyarország rejtett kincseit.