Legacy kód és megszelídítése

Oktatási cél: Legacy (vagyis örökölt) kóddal minden programozó találkozik a munkája során. A tárgy célja
bemutatni a legacy kóddal járó problémákat, illetve ezek kezelését. Ezen kívül megoldásokat mutat be, hogyan
lehet ezeket a problémákat csökkenteni az általunk hátrahagyott kódban, egyben magasabb színvonalon művelni a
szoftver fejlesztést.

Tematika: A tárgy során felelevenítésre kerülnek a korábban tanult programozási elvek és folyamatok, úgy mint,
szoftver folyamat modellek, folyamatos integráció, szerepkörök a fejlesztés során, SOLID alapelvek, KISS,
YAGNI és DRY fogalma. Ezután az elnevezések fontosságával, a feltételek, ciklusok és visszatérések
problémáival, valamint a Clean Code elvek segítségével bemutatásra kerülnek a legacy kódok legfőbb problémái.
Ezt követően a legfontosabb tesztelési technikákon (unit-, integrációs- és karakterizációs teszt) keresztül
megismerkedhetnek a hallgatók azzal, hogyan kezelhető a legacy kód magabiztosan, kevesebb hibázási lehetőség
mellett. A módosításokhoz, továbbá a tesztekkel feltárt problémák megoldására függőség csökkentő technikák (spy,
mock, dummy, stub a tesztelésnél, sprout, wrapper és refaktorálási technikák a termék kód esetén), illetve legjobb
programozási gyakorlatok (TDD, PPP, SW craftmanship) kerülnek bemutatásra. A tárgy végül a kód
továbbfejlesztésére ad hasznos tanácsokat az optimalizálás területének érintésével, illetve a „code smell”-ek
bemutatásával és megszűntetésével. A tárgy az érdeklődő hallgatók számára (személyes) fejlődési lehetőségekre is
irányt kíván mutatni szakmai utak, illetve szakirodalom és (ingyenes) képzési lehetőségek ajánlásával.

https://nik.uni-obuda.hu/targyleirasok/wp-content/uploads/2023/02/Legacy_kod_tantargyi_kovetelmeny_2022_23_2_Bsc.pdf