6.5. CONCLUDING REMARKSThe AspectJ project provides a general-purpose aspect-oriented programming language that is easy to learn and that supports incremental adoption. The tools and approach are designed to be easy to integrate into existing environments and are aimed at supporting real application development. AspectJ goes to great lengths to support developers by making crosscutting structure explicit in IDEs and documentation. This much is required of any aspect-oriented approach. AspectJ has to work harder at its IDE support than some other approaches that work within the confines of the Java programming language (because it needs a dedicated compiler, a structure model, and editing support). This is the price that AspectJ pays for the decision to implement its aspect support directly in the programming language. In return, AspectJ makes it direct and natural for programmers to express crosscutting concerns. With a growing body of users and the availability of numerous books and articles extolling the technology, the future for AspectJ looks bright. |