AspectJ
AspectJ ist eine aspektorientierte Erweiterung von Java, welche bei Xerox PARC entwickelt wurde und nun ein Open-Source-Projekt der Eclipse Foundation ist. Es ist als alleinstehendes Programm und als Eclipse-Zusatzmodul verfügbar.[1]
Ein AspectJ-Compiler bindet Aspekte in normalen Java-Bytecode ein, um das ereignisbasierte System zu implementieren. Aspekte sind in einer Kombination von Java und AspectJ geschrieben und durch eine zusätzliche Vor-Klasse in Java eingebunden, um Standard-Java-Bytecode erzeugen zu können und so AspectJ mit Java kompatibel zu machen.
Im Moment gibt es zwei AspectJ-Compiler: ajc, welcher ein Teil des Eclipse-AspectJ-Projektes ist, und abc, ein erweiterbarer optimierender Compiler, welcher von aspectbench.org erstellt wurde. AspectJ wurde auch auf andere Programmiersprachen portiert, etwa auf Common Lisp (AspectL) und Ruby (AspectR). In diesen beiden Portierungen ist kein spezieller Compiler nötig; die Aspekte können in das existierende objektbasierte System einprogrammiert werden.
Das Programmierframework Spring bietet eine gute Unterstützung für AspectJ.
Literatur
- Adrian Colyer, Andy Clement, George Harley: Eclipse AspectJ. Addison-Wesley, 2004, ISBN 0-321-24587-3.
- Oliver Böhm: Aspektorientierte Programmierung mit AspectJ 5. dpunkt, 2005, ISBN 3-898-64330-1.
Weblinks
- eclipse.org/aspectj
- abc: The AspectBench Compiler for AspectJ ( vom 9. August 2011 im Internet Archive)
Einzelnachweise
- ↑ Xerox besitzt das Patent US6467086. für AOP/AspectJ, aber veröffentlichte den AspectJ-Quellcode unter der Common Public License, welche einige Patentrechte garantiert.
Content Disclaimer
Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.
- The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
- There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
- It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
- Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
- Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.