AspektJ
Przejdź do nawigacji
Przejdź do wyszukiwania
AspectJ to aspektowy język programowania zbudowany jako rozszerzenie języka Java stworzonego w Xerox PARC . Kompilator AspectJ umieszcza pojęcie aspektu w kodzie maszyny wirtualnej, implementując w ten sposób pojęcie relacji. Same skórki są pisane w rozszerzonej Javie poprzez wygenerowanie pliku java lub kompilowane przy użyciu kodu maszynowego zgodnego z kodem generowanym przez kompilatory Javy.
Funkcje AspectJ
- Aspekty : definiuje się je jako „opakowania” kodu. Wyglądają jak klasy Java.
- Joinpoint : punkty w kodzie Java, w których aspekt może przechwycić klasy.
- Punkty — logicznie połączone grupy punktów łączenia.
- Porady : są to fragmenty kodu powiązane z punktami przecięcia, które wprowadzają nowe zachowanie do wszystkich punktów przyłączenia reprezentowanych przez punkt przecięcia.
- Deklaracje elementu międzytypowego : pozwalają aspektowi w pełni zdefiniować pola i metody zaimplementowane dla wielu klas.
Zalety i wady
Niektóre z zalet języka AspectJ to:
- AspectJ pozwala na modelowanie odniesień krzyżowych, rozszerzając tym samym możliwości OOP.
- Jest to zwięzły i jednoznaczny język zaprojektowany, aby oferować zalety modułowości.
Z drugiej strony język AspectJ ma następujące wady:
- Bez odpowiedniego narzędzia programista nie zrozumie funkcjonalności całego systemu. Na przykład elementy członkowskie między typami mogą nie być widoczne i nigdy nie mogą być używane.
- Modelowanie, planowanie i kontrola są znacznie ważniejsze w fazie rozwoju. Aspekty muszą być rozpoznane przez projektantów, co ułatwia programistom zadanie.
- Aspekty mogą być nadużywane. Programista może zaimplementować fałszywą funkcjonalność na dowolnym etapie rozwoju i wpływać na szeroki zakres systemu. Moc POA może być trudna do zrozumienia.
Kompilatory zaprojektowane dla AspectJ
Istnieją co najmniej dwa kompilatory AspectJ:
- ajc część narzędzi obsługiwanych przez projekt Eclipse oraz
- abc , który jest kompilatorem, optymalizatorem i rozszerzalnym, produkowanym na stroniespectbench.org.
Linki zewnętrzne
Wikibooks zawiera książkę lub podręcznik na temat programu Let's w AspectJ .- Strona główna AspectJ
- Narzędzia programistyczne AspectJ (AJDT) dla Eclipse
- Dokumentacja Aspektu
- https://web.archive.org/web/20141216200424/http://aspectbench.org/
- „5 Leben des AspectJ” Markusa Voeltera i Martina Lipperta
- „Porady tkania w aspekcieJ” autorstwa Erika Hilsdale'a i Jima Hugunina