L6: Component and Composite Approach to Aspect-Oriented Programming [n]
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 predstavuje komponentový a kompozitný prístup k aspektovo orientovanému programovaniu. Komponent sa chápe ako modularizačná jednotka väčšia než jedna trieda, ktorú možno prepájať s inými jednotkami v rôznych kontextoch, pričom hlavným cieľom je opakované použitie. Rozlišuje sa prepojenie komponentov cez porty a rozhrania od kompozície, kde sa komponenty prekrývajú ako hlasy v hudobnej skladbe a zasahujú do svojich vnútier. Práve tento zásah, ktorý zahŕňa poradie advice a introdukcie (intertype declarations v AspectJ), rieši aspektová orientácia. Autori komponentových prístupov sa neskôr snažili zosúladiť ich s aspektovou orientáciou, no dnes už veľmi nežijú. Na začiatku lektor oznámil, že test sa presúva na nasledujúci termín a bude v angličtine, s úlohami z Theme/Doc, Theme/UML a implementácie aspektu s návrhovým vzorom.
- - Komponent je modularizačná jednotka väčšia než trieda, prepojiteľná s inými jednotkami v rôznych kontextoch.
- - Hlavným cieľom komponentov je opakované použitie.
- - Prepojenie (connection) prebieha cez porty či rozhrania a komponenty ostávajú nezávislé.
- - Kompozícia sa podobá hudobnej skladbe: komponenty sa prekrývajú a zasahujú do vnútra jeden druhého.
- - Aspektová orientácia pomáha riešiť takéto prekrytia cez advice, ich poradie a introdukcie (intertype declarations).
- - Komponentové prístupy sa neskôr zosúlaďovali s aspektovou orientáciou, dnes sú však málo živé.
- - Test bude nabudúce v angličtine: Theme/Doc analýza, Theme/UML návrh a aspekt s jedným z troch návrhových vzorov.
Zhrnutie pripravené s pomocou AI z prepisu videa.
nechodím na prednášky