Objektumorientált szoftvertervezés
Tárgykód:
Tárgyfelelős:
Goldschmidt Balázs
Szak:
Mérnök informatikus
Képzési szint:
BSc
Képzés féléve:
5
Kategória:
Specializáció
Leírás:
Information about the English course can be found on the English page of the subject.
Oktató: Dr. Simon Balázs
Tantárgyi adatlap: BMEVIIIAC00
Tananyag
A tárgy hivatalos weboldala: Moodle
Záróvizsga tételsor
A BSc záróvizga / MSc felvételi felkészüléshez a tárgy anyagai innen letölthetők:
http://devil.iit.bme.hu/~sbalazs/ootervzv/ooterv-zv-hu.zip
(Az URL-t be kell másolni a böngésző címsorába. A böngészők biztonsági okokból nem engednek HTTPS->HTTP irányú linkeket.)
- Tervezés a követelmények változására tekintettel, OO tervezési elvek. Az egyes elvekre: Milyen problémát old meg az adott elv? Mi a megoldás lényege? Miért baj, ha megsértjük? Mikor lehet megsérteni?
- OO tervezési heurisztikák. Az egyes heurisztikákra: Milyen problémát old meg az adott heurisztika? Mi a megoldás lényege? Miért baj, ha megsértjük? Mikor lehet megsérteni? Hogyan kapcsolódik a refaktorálási mintákhoz és code-smell-ekhez?
- Refaktorálás fogalma, szabályai, előnyei és problémái. Milyen refaktorálási minták és code-smell-ek vannak? Hogyan kapcsolódnak egymáshoz? Hogyan kapcsolódnak az OO tervezési heurisztikákhoz?
- Clean-code elvek. Az egyes elvekre: Milyen problémát old meg az adott elv? Mi a megoldás lényege? Miért baj, ha megsértjük? Mikor lehet megsérteni?
- API tervezési elvek. Az egyes elvekre: Milyen problémát old meg az adott elv? Mi a megoldás lényege? Miért baj, ha megsértjük? Mikor lehet megsérteni?
- Elosztott objektumorientáltság. Milyen problémákat vet fel? Milyen megoldási lehetőségek vannak?
- Konkurens és párhuzamos minták. Az egyes mintákra: Milyen problémát old meg az adott minta? Mi a megoldás lényege? Hogyan kapcsolódik más mintákhoz?
- Immutable objektumorientáltság. Mik a módosíthatóság problémái? Mik a csak olvasható objektumok előnyei és hátrányai? Hogyan kell implementálni egy csak olvasható objektumot leíró osztályt?