Volevo che fosse chiaro per me.Qual è la grande idea dietro l'implementazione AOP
Ho letto del concetto AOP e ho capito che è un ottimo modo per condividere i servizi di taglio trasversale. (Logging, la sicurezza, transazioni ...)
Ma vorrei dire/chiedere qualcosa su questa idea e la sua implementazione.
ho letto ci sono alcuni modi come AspectJ, JBoss AOP al fine di assimilazione AOP alla mia logica di business.
ma non era qui già tanto tempo fa?
diciamo per esempio che voglio condividere un'implementazione di registrazione o di sicurezza amongs miei componenti (fagioli Java, EJB, di sorta ..)
Perché non potevo fare un fagiolo Singleton assicurandosi che Will ha un solo istanza e non appena ogni componente avrà bisogno del suo servizio di registrazione/sicurezza, cercherebbe di cercarlo e usarlo.
Perché avrei bisogno di capire e di avere tutte quelle implementazioni "Big" come aspectj o JBoss AOP? Cosa mi manca qui?
Cosa succede se creo classe genitore ed estendo le mie classi si estendono da esso. Potrei mettere tutta la mia logica "perment" in quella classe genitore. quando una classe lo estenderà, sarà in grado di godere di tutti i metodi logging/secutiry ... che avrei dichiarato prima. Posso anche creare metodi aggiuntivi "crea"/"distruggi" per il registro perment e così via. – rayman
@rayman: ma devi comunque ** chiamare ** questi metodi in modo esplicito (vedi esempio di codice ottimo * JB Nizet *). AOP lo farà per te una volta istruito, anche per il codice che non hai ancora scritto! Ciò significa anche che i nuovi programmatori godranno di funzionalità di registrazione/sicurezza senza nemmeno conoscerle.Per non parlare del fatto che non stai ingombrando il tuo codice con le classi base/metodi di supporto –
Mybe puoi controllare il mio ultimo commento a JB. – rayman