AspectJ sice zvládne i privátní metody, ale neumí měnit třídy z balíku java.
Z.T. -- Zdenek Tronicek FIT CTU in Prague Michal Eibl napsal(a): > Ano, bylo mysleno mit hlidanou finalize(). > AspectJ by nemel mit problem nejen s protected ale ani s private. > > M. > > On 22.9.2011 9:16, Vaclav Stumbauer wrote: >> Musim priznat ze je mimo moji mentalni kapacitu rozlusit jakym >> zpusobem by AOP melo >> resit problem tazatele, zkuste vyhovet tazatali a rozvest jak presne >> jeho problem pomoci AOP resit :-). >> >> Jediny pro me viditelny link (podle me nefcni) je mit interceptor na >> PROTECTED metode (definovana v ramci Object) finalize(), >> nemam sice prilis zkusenosti s AOP, ale nezda se mi kombinace >> interceptoru a protected metody. >> >> diky >> >> VS >> >> >> >> 2011/9/22 Martin Kuba<[email protected]>: >>> Dne 21.9.2011 15:49, Michal Eibl napsal(a): >>>> Kniha je tu http://www.manning.com/laddad2/ >>>> zdrojaky jsou tam ke stazeni, tohle je konkretne z >>>> ch02\workspace\Section2.4.3LoadTimeWeaving >>>> >>>> On 21.9.2011 15:04, Libor Jelinek wrote: >>>>> Můžete to s těmi aspektovými frameworky a weak a phantonovými nápady >>>>> rozvést? To se přiznám, že už je na mě příliš.... Ohledně referencí >>>>> vím, že existují 4 typy referencí, ale aspektové programování slyším >>>>> poprvé.... >>> Pro pochopení principu mi přijde dobrá i kapitola o aspektovém >>> programování >>> z dokumentace Springu: >>> http://static.springsource.org/spring/docs/3.0.x/spring-framework-reference/html/aop.html >>> >>> Terminologie AOP mi přijde podivuhodně nestravitelná, dost dlouho mi >>> trvalo, >>> než jsem pochopil, že "cut across multiple types and objects" v >>> podstatě >>> znamená, že jsem schopen pomocí nového specifikačního jazyka >>> nadefinovat, >>> aby se >>> před, po nebo místo volání zvolených metod volal můj kód. >>> >>> Pěkný příklad jsou databázové transakce, ve Springu je pomocí AOP >>> nastaveno, >>> že když se vstupuje do libovolné metody označené anotací >>> @Transactional, >>> tak se zahájí transakce (pokud už nebyla zahájena), a když se z té >>> metody >>> vystupuje, zase se transakce ukončí. A to lze specifikovat na jednom >>> místě, >>> místo rozesetí stejného kódu do spousty metod. >>> >>> Podobně bych mohl pomocí AOP říci, že se má třeba změřit doba trvání >>> všech >>> metod, >>> jejichž jméno začíná na "a" a mají tři parametry. Nebo že má být >>> zapsáno do >>> logu volání >>> libovolné metody určité třídy. Nebo že se má poslat email kdykoliv bude >>> zavolána metoda, jejíž parametr je typu TopSecret. A tak podobně. >>> >>> Prostě v jednom aspektu popíšu nějak množinu metod (pointcut) a >>> co se má stát a jestli se to má stát před, po nebo místo volání metody >>> (advice). >>> >>> >>> Makub >>> -- >>> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ >>> CERIT-SC Martin Kuba >>> Institute of Computer Science email: [email protected] >>> Masaryk University http://www.ics.muni.cz/~makub/ >>> Botanicka 68a, 60200 Brno, CZ mobil: +420-603-533775 >>> -------------------------------------------------------------- >>> >>> > > -- > =============================== > Ing. Michal Eibl > Budyně nad Ohří - Písty 50 > 413 01 Roudnice nad Labem > Czech Republic > -------------------------- > gms: (+420) 777-290-418 > e-mail: [email protected] > icq: #68436986 > skype: michal.eibl > web: > facebook.com/michal.eibl > cz.linkedin.com/in/michaleibl > =============================== > >
