„Objektumorientált programozás” változatai közötti eltérés
A VIK Wikiből
→Labor: Laborok anyagának hozzáadása |
Követelmények frissítése |
||
8. sor: | 8. sor: | ||
|tanszék=IIT | |tanszék=IIT | ||
|labor=14 db | |labor=14 db | ||
|kiszh=6 db | |kiszh=6 db | ||
|nagyzh=nincs | |nagyzh=nincs | ||
|hf=1 | |hf=1 nagy | ||
|vizsga=nincs | |vizsga=nincs | ||
|tad=https://portal.vik.bme.hu/kepzes/targyak/VIIIBA02/ | |tad=https://portal.vik.bme.hu/kepzes/targyak/VIIIBA02/ |
A lap 2023. május 4., 17:10-kori változata
A tantárgy célkitűzése az objektumorientált gondolkodásmód és az OO programozási nyelvek lehetőségeinek kihasználására való készség kialakítása, amelyhez a Java nyelv ad szintaktikai és szemantikai keretet.
Követelmények
Előtanulmányi rend
- A tárgy felvételéhez A programozás alapjai aláírás szükséges.
Szorgalmi időszakban
Laborok
- 70%-os részvétel.
- A laboralkalmak és az ellenőrző mérések nem pótolhatóak.
Nagyházi
- Kiválasztás a 6. hétig.
- A dokumentáció leadása a 8. hétig.
- Leadás a 13. hétig.
- Ez pótolható a 14. héten.
- A laborvezetővel előre egyeztett laboralkalmon be kell mutatni a házit, ki kell próbálni. Leteszteli (akár kérdésekkel), hogy tényleg a hallgató csinálta-e.
Vizsgafeltételek
- A 4 legjobb kisZH átlaga eléri a kettest.
- A nagyházi elfogadható.
Tematika
A számonkéréseken általában csak az itt felsorolt ((kivéve a duplazárójeleseket)) témakörök szerepelnek.
Előadás
- 1. hét: bevezetés, alapok (típusok, beolvasás, műveletek, vezérlési szerkezetek, elágazások, ciklusok, tömbök)
- 2. hét: metódusok (definiálás, paraméterezés), típus-kompatibilitás, memóriakezelés, lokális változók, tömbök, ArrayList, csomagok, konvenciók, kommentek
- Hiba a 22. dián: a "p2[0] = 7;" helyesen "p2[1] = 7;".
- 3. hét: osztályok: létrehozás, inicializálás láthatóság, egységbezárás, String
- 4. hét: objektumok és kapcsolataik, kivételkezelés, wrapper osztályok ((boxing)), segédosztályok (Math, Random, Arrays)
- 5. hét: változók, metódusok és kivételek öröklése ((Liskov Substitution Principle)); láthatóságok; statikus és dinamikus típusok, virtuális metódusok, metódushívás-szabály, kései kötés; absztrakt osztályok és metódusok
- 6. hét: static változók, polimorfizmus, öröklés (OCP), heterogén kollekció, osztálykohézió és -csatolás, Object osztály, boolean equals()
- 7. hét: szünet
- 8. hét: interface+implements, deep / shallow copy, hash; kollekciók: áttekintés, Interface Collection, Iterator, Set, List, Collections
- 9. hét: elmaradt
- 9. hét: input-output
- 10. hét. szünet
- 11. hét: szövegfeldolgozás és utility-k
- 12. hét: automatizált tesztelés
- 13. hét: fakultatív konzultáció
- 14. hét: szünet
Labor
- 1. hét: alapok, Eclipse (tutorial)
- 2. hét: (rekurzív) függvények, List, ArrayList
- 3. hét: 1. kisZH az 1–2. előadás anyagából; osztályok készítése
- 4. hét: szünet
- 5. hét: 2. kisZH az 1–3. előadás anyagából; kivételkezelés, osztályok készítése (setter, getter, konstruktorok) és azok közötti kapcsolatok létrehozása
- 6. hét: (többszörös) öröklés, láthatóságok, kivételek (öröklés)
- 7. hét: szünet
- 8. hét: heterogén kollekció, öröklés, statikus tagok, rekurzív tárolás
- 9. hét: split, kollekciók, parancsok, switch-case, Comparator, iterator
- 10. hét: parancsok, split, System.getProperty(), listFiles, File, getCanonicalPath(), getParentFile(), delete(), mkdir(), renameTo(), FileInputStream és FileOutputStream, FileReader és BufferedReader, Scanner, String.matches(), run arguments, java.util.zip
- 11. hét: szövegfeldolgozás
- 12. hét: JUnit
- 13. hét: HF bemutatás
- 14. hét: HF bemutatás / pótlás
Ajánlott irodalom
- Kövesdán Gábor: Szoftverfejlesztés Java SE platformon (ISBN 978-615-00-2933-7, 2018., 2. magánkiadás)
Tippek
- Érdemes az elején összeszedni a ketteshez szükséges pontszámot (1-2 ZH-ból lehetséges). A vége felé a ZH-k nehézsége exponenciálisan növekszik, és ez nem az a típusú tárgy, hogy "majd az utolsón megszerzem a maradék x pontot".
1. félév | |
---|---|
2. félév | |
3. félév | |
4. félév | |
5. félév | |
6. félév |