L4: Aspects in Analysis and Design: Theme and JPDD

Zdroj
ručne priradené
Pridané

Pozrieť na YouTube →

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.

Otvoriť AI: ChatGPT · Claude · Gemini

Zhrnutie prednášky

Prednáška najprv uzatvára tému implementácie vzoru Observer v AspectJ, ktorú si majú študenti vyskúšať na cvičeniach: ide o senzory teploty a k nim viazané displeje, kde aspekt zabezpečuje pridávanie, odoberanie a notifikáciu pozorovateľov. Stav pre jednotlivé objekty sa rieši inštanciáciou aspektov (aspekt na objekt) alebo medzitypovými deklaráciami (introduction), ktoré do tried zavádzajú atribúty, metódy či rozhrania. Vďaka tomu zostávajú triedy senzora a displeja čisté a bez stopy po vzore Observer. Následne sa prednáška posúva k aspektom v analýze a návrhu, ku ktorým patrí modelovanie cez prípady použitia a prístupy Theme a JPDD. Ako príklad slúži špecifikácia zabezpečovacieho systému so špeciálnymi senzormi, ktoré sú pri vypínaní systému vynechané.

  • - Vzor Observer sa dá implementovať objektovo aj aspektovo; aspektová verzia oddeľuje logiku pozorovateľov od tried senzora a displeja.
  • - Stav pre jednotlivé objekty (zoznam pozorovateľov) možno riešiť inštanciáciou aspektov alebo medzitypovými deklaráciami.
  • - Medzitypové deklarácie (introduction) pridávajú do tried atribúty, metódy a rozhrania, ktoré potom môže využívať aj objektovo orientovaný kód.
  • - Notifikáciu pozorovateľov aspekt spúšťa cez advice typu after pri zmene stavu senzora.
  • - Tok riadenia je konceptuálna, dynamická záležitosť spojená s transakciami; aspekty ho vedia zachytiť a uchovávať údaje.
  • - Prednáška prechádza k aspektom v analýze a návrhu (Theme, JPDD) s modelovaním cez prípady použitia, pričom AspectJ sa stále využíva na realizáciu.
  • - Príklad zabezpečovacieho systému ukazuje priečnu požiadavku: špeciálne senzory sa pri vypnutí systému nevypínajú.

Zhrnutie pripravené s pomocou AI z prepisu videa.