|
Description Back Cover Contents Features Author Description
Aspect-oriented software design (ASOD), which follows the Java philosophyof "write once, run anywhere", is a new way of thinking about programconstruction. It is a rapidly growing and evolving programming methodologythat some feel may eventually replace object-orientation as the dominantprogramming paradigm. The first public release of the AspectJ programminglanguage was in 1998 and has been gaining momentum ever since. This book isan introduction to AOP with AspectJ and Eclipse and shows how to create aproductive AO development environment by using the AspectJ DevelopmentTools for Eclipse (AJDT). Tools have an important role to play in learningaspect-orientation (AO) and Eclipse tools help Java developers betterunderstand AOP. In fact the growing interest in AOP can be attributed to thebetter available tools and this book teaches the reader everything they need tounderstand AOP and apply it successfully to their own projects. topBack Cover
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. topContents
Preface. Introduction. I. INTRODUCING ECLIPSE, ASPECTJ, AND AJDT. 1. Getting Started. What Is Eclipse? Installing Eclipse. Eclipse Basics. Installing AJDT. Examples for This Book. Summary . 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. Finishing Touches. Summary. 3. Extending the Application. The Story So Far. Serialization-Based Persistence. Hibernating. Managing Build Configurations. Summary. 4. More AJDT. Building an ASPECTJ Project. Debugging. Editor Templates and the Outline View Toolbar. Generating Documentation (Ajdoc). AspectJ Help, Examples, and Cheat Sheets. Summary. II. THE ASPECTJ LANGUAGE. 5. An Overview of AspectJ. What Is An Aspect? Join Points and Pointcuts. Advice. Inter-Type Declarations. Key Design Properties of the AspectJ Language. Summary. References. 6. Straight to the Point. The Calculator Program. Introduction to Pointcut Designators. The Method Call Pointcut Designator. Pointcut Composition. 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. Common Pitfalls. Summary. 7. Take My Advice. The Different Types of Advice. Advice Parameters and Pointcuts. Writing Logic in the Body of Advice. Advice Ordering. Softening Exceptions. declare warning and declare error. Common Pitfalls. Summary. References. 8. Inter-Type Declarations. Fields, Methods, and Constructors. Scope and Visibility. Inter-Type Declarations and Interfaces. Extending Classes. Using Pointcuts and Advice with Inter-Type Declarations. Summary. 9. Aspects. Aspect Definition and Initialization. Aspect Instantiation. Aspect Inheritance. Inner Aspects. Aspect Privilege. Common Pitfalls. Summary. 10. Using the AspectJ API. Package org.aspectj.lang. Package org.aspectj.lang.reflect. Summary. 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. Summary. References. 12. Advanced AJDT. Aspect Libraries. Linking Aspects with Compiled .class Files. Ant Integration. Aspect Visualization. Summary. 13. Aspect-Oriented Design. Finding Aspects. What Makes a Good Aspect? Closing Thoughts. Appendix A. Command-Line AspectJ. Installing AspectJ. Using the Compiler. Building with Ant. Appendix B. AspectJ Language Quick Reference. Aspect Declaration. Pointcuts. Wildcards. Advice. Inter-Type Declarations. 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. Objects. Object Adornments. Markers. Build Configuration. Index. topFeatures
The definitive (and only) introduction to Aspect-Oriented Programming (AOP) using Eclipse and ASpectJ. ° Author team is made up of the lead developers of AspectJ Development Tools(AJDT) ° AOP and AspectJ are rapidly growing and evolving along with Eclipse ° The first book to present a complete package of a productive development environment for AOP topAuthor
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. top
|