Eclipse AspectJ: Aspect-Oriented Programming with AspectJ and the Eclipse AspectJ Development Tools
- By Adrian Colyer, Andy Clement, George Harley, Matthew Webster
- Published Dec 14, 2004 by Addison-Wesley Professional. Part of the Eclipse Series series.
- Copyright 2005
- Dimensions: 7x9-1/4
- Pages: 504
- Edition: 1st
- ISBN-10: 0-321-24587-3
- ISBN-13: 978-0-321-24587-8
Register your product to gain access to bonus material or receive a coupon.
Product Author Bios
About the Authors
ADRIAN COLYER is a senior technical staff member at IBM, the leader of the AspectJ Eclipse project, and co-founder of the AspectJ Development Tools (AJDT) for Eclipse project. Currently he leads an IBM team developing and applying aspect-oriented technology.
ANDY CLEMENT is a senior software developer at IBM's Laboratory at Hursley Park, a committer on the AspectJ project, and co-founder of the AJDT project. He is also involved in the use of aspects in J2EE middleware.
GEORGE HARLEY is a senior developer at IBM's Hursley Laboratory currently working on AJDT and deploying aspect technology in enterprise applications.
MATTHEW WEBSTER joined IBM in 1989 and is currently developing aspect-oriented technology for use with IBM products.
© Copyright Pearson Education. All rights reserved.
Now every Java developer can leverage the immense power of AOP With AspectJ, Java developers can leverage the breakthrough power of Aspect-Oriented Programming (AOP) using a language they already know, within the comfortable, highly productive Eclipse development environment. In this book, AspectJ's lead developers help you master AOP's essential principles and techniques, as you use them to address your toughest software quality, productivity, and maintenance challenges.
AOP improves the modularity of programs, making the code much closer to the design. It can dramatically reduce the time taken to implement common features and functions, improve quality, integrate plain-old Java objects with systems and services, create simpler, more reusable components, and much more besides.
Drawing on their experience as tool developers, programmers, and mentors, the authors cover every facet of AOP development with AspectJ and Eclipse, from creating new projects through extending and
documenting full-fledged applications. You'll find an authoritative tutorial covering the entire AspectJ language, a complete API reference, and realistic guidance on adopting AspectJ in your organization.
No AOP or Eclipse experience necessary!
Install and configure both Eclipse and the AspectJ Development Tools (AJDT)
Discover how AOP can modularize and optimize everything from error checking to performance
Craft new AspectJ applications and incorporate AOP capabilities into existing systems
Build, debug, and document AspectJ applications
Understand crucial AOP concepts, such as join points, pointcuts, advice, and inter-type declarations
Master advanced techniques: Aspect libraries, linking with compiled .class files, visualization, aspect-oriented design, and more
The accompanying website, www.awprofessional.com/title/0321245873, is full of samples, examples, and source code to help you start writing Java-based AOP software today.
© Copyright Pearson Education. All rights reserved.
This source code file contains the code from Eclipse AspectJ: Aspect-Oriented Programming with AspectJ and the Eclipse AspectJ Development Tools by Adrian Colyer, Andy Clement, George Harley and Matthew Webster.
32 of 32 people found the following review helpful
Everything about AspectJ that you didn't know to ask,
This review is from: Eclipse AspectJ: Aspect-Oriented Programming with AspectJ and the Eclipse AspectJ Development Tools (Paperback)In Part 1, "Introducing Eclipse, AspectJ and AJDT", we are led through the building of a prototype insurance application (SimpleInsurance). Along the way, we are introduced to Eclipse, the AspectJ language and the AspectJ Development Tools (AJDT). The aspects are not presented as pre-built, but we get to see how they are selected, written, refactored and, even debugged. I found the discussion interesting, and saw new ways to use the tooling to prevent problems, but it did mean that even simple features went through a lot of hoops which were not always clear at the time. Thrown into the mix were a number of side-bars which explained the development philosophy and architecture behind AspectJ to a depth that I have only glimpsed in some of the mailing list discussions. I am using AspectJ and some of these sidebars took me several minutes to digest. I don't like to think about how a genuine newcomer would react. Thrown into the mix were screen captures of simple wizards and... Read more
12 of 14 people found the following review helpful
I'm finally beginning to understand AOP...,
This review is from: Eclipse AspectJ: Aspect-Oriented Programming with AspectJ and the Eclipse AspectJ Development Tools (Paperback)Since my last attempt to get a book to learn about AspectJ wasn't very productive, I decided to try again with Eclipse AspectJ: Aspect-Oriented Programming with AspectJ and the Eclipse AspectJ Development Tools by Adrian Colyer, Andy Clement, George Harley, and Matthew Webster. *Much*, much better...
Part 1 - Introducing Eclipse, AspectJ, and AJDT: Getting Started; First Steps in AJDT; Extending The Application; More AJDT
Part 2 - The AspectJ Language: An Overview Of AspectJ; Straight To The Point; Take My Advice; Inter-Type Declarations; Aspects; Using The AspectJ API
Part 3 - Putting It All Together: Adopting AspectJ; Advanced AJDT; Aspect-Oriented Design; Command-Line AspectJ; AspectJ Language Quick Reference; Next Steps; AJDT Icons Reference; Index
To give you an idea of how much better I liked this book... I learned more in the preface than I knew after going through the other book I reviewed. :-)... Read more
6 of 8 people found the following review helpful
Excellent in depth book on Aspect J,
This review is from: Eclipse AspectJ: Aspect-Oriented Programming with AspectJ and the Eclipse AspectJ Development Tools (Paperback)I found the concepts of AspectJ cool but the book seems choppy and too complex to follow. The Eclipse AspectJ tools seem very complicated and busy on the screen. The book could have had a better flow and a lighter introduction. Possibly starting out as a "language" book versus a tool book.
› See all 7 customer reviews...
Online Sample Chapter
Table of Contents
I. INTRODUCING ECLIPSE, ASPECTJ, AND AJDT.
1. Getting Started.
What Is Eclipse?
Examples for This Book.
2. First Steps in AJDT.
A Simple Insurance Application.
Tracking Policy Updates.
Creating an AspectJ Project.
Creating the PolicyChangeNotification Aspect.
Stating the Notification Policy.
Implementing the Notification Policy.
Showing Advice In AJDT.
Evaluating the Implementation.
3. Extending the Application.
The Story So Far.
Managing Build Configurations.
4. More AJDT.
Building an ASPECTJ Project.
Editor Templates and the Outline View Toolbar.
Generating Documentation (Ajdoc).
AspectJ Help, Examples, and Cheat Sheets.
II. THE ASPECTJ LANGUAGE.
5. An Overview of AspectJ.
What Is An Aspect?
Join Points and Pointcuts.
Key Design Properties of the AspectJ Language.
6. Straight to the Point.
The Calculator Program.
Introduction to Pointcut Designators.
The Method Call Pointcut Designator.
Patterns and Signatures.
The Method Execution Pointcut Designator.
The Target Pointcut Designator.
The this Pointcut Designator.
The get and set Pointcut Designators.
Capturing Context with the args Pointcut Designator.
Extracting Values with this and target.
The handler Pointcut Designator.
Initialization Pointcut Designators.
Static Scoping Pointcut Designators: within, withincode.
Dynamic Scoping Pointcut Designators: cflow, cflowbelow.
The adviceexecution Pointcut Designator.
The if Pointcut Designator.
How to Write a Good Pointcut.
7. Take My Advice.
The Different Types of Advice.
Advice Parameters and Pointcuts.
Writing Logic in the Body of Advice.
declare warning and declare error.
8. Inter-Type Declarations.
Fields, Methods, and Constructors.
Scope and Visibility.
Inter-Type Declarations and Interfaces.
Using Pointcuts and Advice with Inter-Type Declarations.
Aspect Definition and Initialization.
10. Using the AspectJ API.
III. PUTTING IT ALL TOGETHER.
11. Adopting AspectJ.
The Adoption Process.
Different Types of Aspects.
Enforcement Aspect Examples.
Infrastructure Aspect Examples.
Core Aspect Examples.
Evaluating the Simple Insurance Application.
12. Advanced AJDT.
Linking Aspects with Compiled .class Files.
13. Aspect-Oriented Design.
What Makes a Good Aspect?
Appendix A. Command-Line AspectJ.
Using the Compiler.
Building with Ant.
Appendix B. AspectJ Language Quick Reference.
Appendix C. Next Steps.
Mailing Lists and FAQ.
Raising Bugs and Enhancement Requests.
Contributing to the Development of AspectJ and AJDT
Appendix D. AJDT Icons Reference.
Downloadable Sample Chapter
Download the Sample
Chapter related to this title.
This book includes free shipping and is available on demand.
Get access to thousands of books and training videos about technology, professional development and digital media from more than 40 leading publishers, including Addison-Wesley, Prentice Hall, Cisco Press, IBM Press, O'Reilly Media, Wrox, Apress, and many more. If you continue your subscription after your 30-day trial, you can receive 30% off a monthly subscription to the Safari Library for up to 12 months. That's a total savings of $199.