| <html><head> | |
| <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> | |
| <title>Conclusion</title><meta name="generator" content="DocBook XSL Stylesheets V1.44"><link rel="home" href="index.html" title="The AspectJTM Programming Guide"><link rel="up" href="starting.html" title="Chapter 1. Getting Started with AspectJ"><link rel="previous" href="starting-production.html" title="Production Aspects"><link rel="next" href="language.html" title="Chapter 2. The AspectJ Language"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Conclusion</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="starting-production.html">Prev</a> </td><th width="60%" align="center">Chapter 1. Getting Started with AspectJ</th><td width="20%" align="right"> <a accesskey="n" href="language.html">Next</a></td></tr></table><hr></div><div class="sect1"><a name="starting-conclusion"></a><div class="titlepage"><div><h2 class="title" style="clear: both"><a name="starting-conclusion"></a>Conclusion</h2></div></div><p> | |
| AspectJ is a simple and practical aspect-oriented extension to | |
| Java. With just a few new constructs, AspectJ provides support for | |
| modular implementation of a range of crosscutting concerns. | |
| </p><p> | |
| Adoption of AspectJ into an existing Java development project can be | |
| a straightforward and incremental task. One path is to begin by using | |
| only development aspects, going on to using production aspects and | |
| then reusable aspects after building up experience with | |
| AspectJ. Adoption can follow other paths as well. For example, some | |
| developers will benefit from using production aspects right | |
| away. Others may be able to write clean reusable aspects almost right | |
| away. | |
| </p><p> | |
| AspectJ enables both name-based and property based crosscutting. | |
| Aspects that use name-based crosscutting tend to affect a small | |
| number of other classes. But despite their small scale, they can | |
| often eliminate significant complexity compared to an ordinary Java | |
| implementation. Aspects that use property-based crosscutting can | |
| have small or large scale. | |
| </p><p> | |
| Using AspectJ results in clean well-modularized implementations of | |
| crosscutting concerns. When written as an AspectJ aspect the | |
| structure of a crosscutting concern is explicit and easy to | |
| understand. Aspects are also highly modular, making it possible to | |
| develop plug-and-play implementations of crosscutting | |
| functionality. | |
| </p><p> | |
| AspectJ provides more functionality than was covered by this short | |
| introduction. The next chapter, <a href="language.html">The AspectJ Language</a>, | |
| covers in detail more of the features of the AspectJ language. The | |
| following chapter, <a href="examples.html">Examples</a>, then presents some | |
| carefully chosen examples that show you how AspectJ might be used. We | |
| recommend that you read the next two chapters carefully before | |
| deciding to adopt AspectJ into a project. | |
| </p></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="starting-production.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="language.html">Next</a></td></tr><tr><td width="40%" align="left">Production Aspects </td><td width="20%" align="center"><a accesskey="u" href="starting.html">Up</a></td><td width="40%" align="right"> Chapter 2. The AspectJ Language</td></tr></table></div></body></html> |