Tanfolyam időpontok és jelentkezés
Első oktatási nap: 2024. március 18., további oktatási napok: 19., 20.
Első oktatási nap: 2024. július 15., további oktatási napok: 16., 17.
Első oktatási nap: 2024. november 25., további oktatási napok: 26., 27.
Zártcsoportos képzésre jelentkezem
Jelentkezés időpont nélkül
A tanfolyamon a hallgatók megismerkednek a legfontosabb tervezési mintákkal, megtanulják felismerni és tudatosan használni őket C++ környezetben.
A design patterns ismeret minden szoftverfejlesztőtől egy alapvető elvárás, így ajánljuk mindenkinek, aki programozóként dolgozik és még ismeretlen számára a téma vagy már ismeri, és egyszerűen csak fejlődni szeretne benne.
A tanfolyamon való részvétel előfeltétele a stabil C++ programozási ismeret, a magabiztos Visual Studio használat, illetve alapvető objektumorientált programozási ismeretek magabiztos használata.
A tervezési minták olyan „egymással együttműködő objektumok és osztályok leírásai, amelyek testre szabott formában valamilyen általános tervezési problémát oldanak meg egy bizonyos összefüggésben”.* A tervezési minták ismeretének egyik legnagyobb előnye, hogy lerövidíti a tapasztalatszerzési időt, hiszen összegyűjti az optimális programozási mintákat, elkerülve ezzel bizonyos kódolási problémákat.
A tanfolyam célja, hogy bemutassa a hallgatóknak a klasszikus objektumorientált tervezési mintákat, ezek implementálását, működését, felhasználási lehetőségeit nagyobb rendszerekben. A tanfolyam során először megismerkedünk néhány magasabb szintű objektumorientált szoftvertervezési elvvel, implementáljuk a klasszikus „Gang of four” tervezési mintákat illetve néhány modern adatvezérelt alkalmazás-tervezési mintát, végül pedig megnézzük, hogyan tudjuk nagyobb rendszerekben a minták kombinációját is használni.
*A tervezési minták GoF általi definíciója.
Tematika:
1. ALAPVETŐ TERVEZÉSI FOGALMAK
1.1. Kohézió
1.2. Csatolás
1.3. Öröklődés
1.4. Delegálás
2. OOP METRIKÁK
3. OOP TERVEZÉS
3.1. DRY
3.2. KISS
3.3. Law of Demeter
3.4. Dependency Inversion
3.5. Dependency Injection
3.6. SOLID elvek
4. C++ IDIÓMÁK
4.1. RAII
4.2. pImpl
4.3. CRTP és Mixin
4.4. Tag dispatch
5. PROGRAMTERVEZÉSI MINTÁK
5.1. Létrehozási minták
5.2. Szerkezeti minták
5.3. Viselkedési minták
5.4. Konkurens, elosztott, párhuzamos idiómák, minták
6. REFACTORING ALAPOK
6.1. Tiszta kód, gyanús szagú kód
6.2. Technikák, módszerek
6.3. Szoftver-fejlesztési antiminták (pl. blob, spagetti kód, busy waiting)
Az elmélethez kapcsolódó gyakorlati példák tetszettek a legjobban, így jól érthető lett a tananyag.
Magó András
Asseco Central Europe Magyarország Zrt.