AspektJ
Den aktuelle version af siden er endnu ikke blevet gennemgået af erfarne bidragydere og kan afvige væsentligt fra den
version , der blev gennemgået den 31. oktober 2019; checks kræver
6 redigeringer .
AspectJ er en aspektorienteret Java-sprogudvidelse skabt af PARC. Sproget er tilgængeligt i Eclipse Foundation - projekterne både separat og som en del af Eclipse- udviklingsmiljøet . Sproget blev de facto standarden for aspekt-orienteret programmering, hvor der blev lagt vægt på enkelhed og brugervenlighed. Siden den første udgivelse har sproget brugt en Java-lignende syntaks.
En simpel beskrivelse af sproget
AspectJ udvider syntaksen for Java, hvilket betyder, at alle programmer skrevet i Java vil være gyldige AspectJ-programmer, men ikke omvendt, da de kan indeholde specielle konstruktioner kaldet aspekter, som kan indeholde flere dele, der ikke er tilgængelige for almindelige klasser.
- Udvidelsesmetoder giver programmøren mulighed for at tilføje metoder, felter og grænseflader til eksisterende klasser. Dette eksempel tilføjer en metode acceptVisitor(se besøgendes designmønster ) til klassekoden Point:
aspekt VisitAspect {
void Point . acceptVisitor ( Besøgende v ) {
v . besøg ( dette );
}
}
Bibliografi
- Laddad, Ramnivas (28. september 2009), AspectJ in Action: Enterprise AOP with Spring (2. udgave), Manning Publications , s. 550, ISBN 978-1-933988-05-4
- Miles, Russ (20. december 2004), AspectJ Cookbook (1. udgave), O'Reilly Media , s. 354, ISBN 978-0-596-00654-9 , < http://oreilly.com/catalog/9780596006549/ >
- Colyer, Adrian; Clement, Andy; Harley, George & Webster, Matthew (24. december 2004), Eclipse AspectJ: Aspect-Oriented Programming with AspectJ and the Eclipse AspectJ Development Tools (1. udgave), Addison-Wesley Professional , s. 504, ISBN 978-0-321-24587-8 , < http://www.informit.com/store/product.aspx?isbn=0321245873 >
- Gradecki, Joseph D. & Lesiecki, Nicholas (7. marts 2003), Mastering AspectJ: Aspect-Oriented Programming in Java (1. udg.), Wiley , s. 456, ISBN 978-0-471-43104-6 , < http://www.wiley.com/WileyCDA/WileyTitle/productCd-0471431044.html >
Se også
Noter
- ↑ 1.9.9.1 .
Links