P3: Návrhové vzory
Preber si túto prednášku so svojou AI
Skopíruj pripravený podklad a vlož ho do ChatGPT, Claude alebo inej AI — bude ťa učiť alebo skúšať len z tejto prednášky.
Zhrnutie prednášky
Prednáška nadväzuje na hru s obrami a rytiermi a ukazuje jej implementáciu v kóde, vrátane organizácie tried do balíkov (hra a postavy) a konštruktora triedy Hra, ktorý umožňuje vytvárať viacero inštancií a flexibilne definovať počet rytierov a obrov. Vysvetľuje sa rozdiel medzi diagramom objektov (konkrétny príklad) a diagramom tried (všeobecný predpis) a ich vzťah ku kódu. Následne sa zavádza motivácia pre návrhový vzor Pozorovateľ (Observer) — potreba sledovať priebeh súbojov obrov a rytierov (kto víťazí, aká je celková energia) bez zasahovania do pôvodného kódu tried Obor a Rytier. Rieši sa, ako vytvoriť samostatný objekt pozorovateľa s vlastným rozhraním, ktorý bude upovedomený o udalostiach hodných pozornosti a bude môcť na ne reagovať (výpis, prepočet, zvuk a pod.).
- - Rekapitulácia hry obrov a rytierov s pridaním konštruktora triedy Hra umožňujúceho viacero inštancií
- - Organizácia kódu do balíkov: samostatný balík pre hru a balík pre postavy (characters)
- - Rozdiel medzi diagramom objektov (konkrétny príklad) a diagramom tried (všeobecný predpis)
- - Vzťahy medzi triedami: asociácia, dedenie (generalizácia/špecializácia v UML)
- - Polymorfizmus umožňuje ponechať metódu clash one on one nezmenenú pri pridávaní nových typov rytierov a obrov
- - Motivácia pre návrhový vzor Pozorovateľ: potreba sledovať výsledky súbojov a energiu bez zasahovania do tried Obor a Rytier
- - Návrh rozhrania pre pozorovateľov, ktorí budú upovedomení o udalostiach a môžu na ne reagovať rôznym spôsobom
Zhrnutie pripravené s pomocou AI z prepisu videa.
nechodím na prednášky