L1: Aspects Around Us
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
Úvod prednášky vysvetľuje organizáciu predmetu Aspektovo orientovaný vývoj softvéru: individuálny projekt na vlastnú tému z aspektovo orientovaného programovania alebo modelovania, technická správa, seminárna prezentácia (20 bodov), projekt (50 bodov) a skúška (30 bodov). Pri každej prezentácii sú určení dvaja diskutujúci. Hlavná téma motivuje aspekty otázkou, ako zmeniť správanie programu bez zásahu do jeho kódu. Na príklade výpisov pri volaní metód typu set_x sa ukazuje, že ručne vkladané výpisy sú roztrúsené po kóde, ťažko sa udržiavajú a zakrývajú podstatu. Aspekt v jazyku AspectJ presne vyjadruje, že pred vykonaním vybraných metód sa má vypísať správa, a toto správanie sa do programu vkladá automaticky, pôvodne predspracovaním, dnes na úrovni bajtkódu.
- - Hodnotenie: projekt 50 bodov, seminárna prezentácia 20 bodov, skúška 30 bodov; nutné odovzdať všetky časti projektu.
- - Projekt je individuálny, na vlastnú tému z aspektovo orientovaného programovania alebo modelovania, s výstupom vo forme technickej správy.
- - Pri každej seminárnej prezentácii sú určení dvaja diskutujúci, ktorí kladú otázky a vedú diskusiu.
- - Aspekty umožňujú zmeniť správanie programu bez modifikácie jeho pôvodného kódu.
- - Ručné vkladanie výpisov (logovania) do metód je roztrúsené po kóde a zakrýva podstatu programu.
- - AspectJ umožňuje formálne zapísať, že sa má pred vykonaním metódy (napr. set_x) vypísať správa.
- - Prvé implementácie používali preprocesor, AspectJ dnes vkladá aspekty do bajtkódu.
Zhrnutie pripravené s pomocou AI z prepisu videa.
nechodím na prednášky