AOP som bol dakedy nazoru, ze iba na "nepretinajuce sa zalezitosti". Napriklad spomenute meranie performance, ci logovanie. Aktualne sa dostavam v spring (java) frameworku na level, kedy dokazem akceptovat aj take, ze security riesi AOP pristup. Napriklad.
Dalsim levelom je, ze cez spring-data-rest je vytvoreny projekt, ktory ma zadefinovane entity a metody v repozitaroch a poskytuje plne CRUD veci k nim, spolu s nejakym hypermedia formatom (HAL, ci aktualne uz aj daco ine podporuju). Nasledne, ked tam chce clovek pridat nejaku biznis logiku (napr.: zmazat entitu faktura mozes, len pokial nebola vyplatena), tak clovek ide defoltne tak, ze si implementuje vsetko pre operaciu mazania sam. To znamena nejake sql, biznis logiku, vhodne controller metody, error handling+formating a samozrejme korektne formatovanie odpovedi vo zvolenych formatoch (HAL+JSON napr). Proste, ak mi nevyhovuje defolt, tak zrazu musim doplnit 5 tried po 100 riadkoch. Namiesto toho je ale mozne pouzit AOP (su i ine moznosti samozrejme) a na vhodnom mieste vykonat validaciu biznis obmedzeni a pripadne prerusit povodne vykonavanie volani a upravit vysledok volania, alebo vyhodit vynimku a vyuzit opat celu masineriu (automagic things) spring-u k spravnemu konvertovaniu erroru a odpovedi.
Ale inak je to stale prasacina na prvy pohlad (a hlavne pre noveho cloveka v time je to sialeny kognitivny load).