Programozás I. jegyzet¶
Az itt található jegyzet nem helyettesíti sem előadáson, sem a gyakorlaton való részvételt.
Az előadás anyaga elérhető a Programozás I. előadás CooSpace színterén.
Ez a tananyag elérhető zip formátumban is, offline használatra ezen a linken.
Szükséges alkalmazások¶
Java nyelvű alkalmazás készítéséhez szükséged lesz a Java Development Kit 17 vagy újabb változatára. A letöltéshez és telepítéshez itt találsz segítséget.
A kabinetben használt Java fordító verzió: javac 17.0.3
Az otthoni gyakorláshoz az alábbi alkalmazásokra lesz/lehet szükséged:
UML szerkesztő¶
Az órák egy részében objektum-orientált tervezést fogunk tanulni, amihez szükséged lesz egy UML szerkesztőre.
Néhány alternatíva:
- ArgoUML Letöltés (a gyakorlaton is ezt a programot használtuk)
- Violet UML Editor Letöltés vagy WebStart
- Gliffy Letöltés vagy WebStart
- Modelio Letöltés
- Draw.io Indítás
Javasolt fejlesztői környezetek¶
- IntelliJ Idea Letöltés (Community verzió), a professional verzió is elérhető és ingyenes egyetemi hallgatóknak, a stud-os e-mail címmel kell regisztrálni az IntelliJ oldalán.
- Eclipse (Eclipse IDE 2022-12) Letöltés
- Netbeans Letöltés (Java SE verzió)
- Visual Studio Code Letöltés
A tantárgy tematikája¶
Objektum orientáltság¶
- UML alapok (vizuális modellezés, jelölésrendszer, eszköz, modell, nézet, diagram)
- Objektumok – állapota, viselkedése, identitása, élete
- Osztály, csomag, osztálydiagram (asszociáció, aggregáció, öröklődés)
- Objektum interfésze, implementáció elrejtése
- Implementáció újrafelhasználása – kompozíció, aggregáció
- Interfész újrafelhasználása – öröklődés, polimorfizmus
A Java nyelv¶
- Primitív típusok
- Osztályok – új típusok létrehozása, mezők, metódusok, csomagok
- Generikus osztályok
- Fordítás és futtatás, virtuális gép, futtató környezet
- Megjegyzések, dokumentáció, kódolási stílus
- Programfutás vezérlés, operátorok, precedencia, vezérlési szerkezetek, tömbök
- Inicializálás és takarítás, konstruktor, szemétgyűjtés
- Újrafelhasználhatóság – kompozíció, aggregáció, öröklődés, implementáció elrejtése
- Operáció kiterjesztés és felüldefiniálás, polimorfizmus, kései kötés
- Végső adatok, metódusok és osztályok
- Absztrakt és interfész osztályok, "többszörös öröklődés", belső osztályok
- Hibakezelés kivételekkel és futás közbeni típusazonosítás (RTTI)
- Osztálykönyvtárak (kollekciók, iterátorok, I/O rendszer, GUI)
Irodalom¶
- Tarczali Tünde: UML diagramok a gyakorlatban, Typotex Kiadó, 2011. Letöltés
- Bruce Eckel: Thinking in Java Letöltés
- Angster Erzsébet: Objektumorientált tervezés és programozás: JAVA, 4KÖR Bt., 2002
- Dr. Kondorosi Károly, Dr. László Zoltán, Dr. Szirmay-Kalos László: Objektumorientált szoftverfejlesztés, Computer Books, 1999
Az elkészült jegyzetről, hibák¶
Hibák¶
A jegyzet folyamatosan készül, így előfordulhatnak benne apróbb hibák, hiányosságok, elírások.
Ha valaki esetleg ilyet találna, kérem írjon az antal .at. inf.u-szeged.hu
címre, hogy mihamarabb javíthassuk.
Készítők¶
- Antal Gábor
- Dr. Ferenc Rudolf
- Dr. Jász Judit
- Keleti Márton György
- Kicsi András
- Szarka Tibor Alex
- Gercsó Márk
Jogi nyilatkozat¶
Nevezd meg! - Ne add el! - Így add tovább! 4.0 Nemzetközi
Gyors összefoglaló a liszenszről, és a teljes változat.