Home > Store > Programming > Java

Aspect-Oriented Programming with AspectJ

Register your product to gain access to bonus material or receive a coupon.

Aspect-Oriented Programming with AspectJ

eBook (Adobe DRM)

  • Your Price: $22.39
  • List Price: $27.99
  • About Adobe DRM eBooks
  • This eBook requires the free Adobe® Digital Editions software.

    Before downloading this DRM-encrypted PDF, be sure to:


    • Install the free Adobe Digital Editions software on your machine. Adobe Digital Editions only works on Macintosh and Windows, and requires the Adobe Flash Player. Please see the official system requirements.
    • Authorize your copy of Adobe Digital Editions using your Adobe ID (select AdobeID as the eBook vendor). If you don't already have an Adobe ID, you can create one here.

Description

  • Copyright 2003
  • Pages: 288
  • Edition: 1st
  • eBook (Adobe DRM)
  • ISBN-10: 0-7686-6246-X
  • ISBN-13: 978-0-7686-6246-7

In a November 2001 Java Pro magazine article, noted Java pundit Daniel Savarese states, "The days of Object-Oriented Programming may be numbered, One day we may all be using Aspect-Oriented Programming ." While this may be hyperbole, the AOP bring certain needed improvements to the OOP. AspectJ is a Java-based tool that allows developers to apply standard Java syntax to AOP principles, much as C++ allowed C programmers to use C syntax in an object-oriented manner. There are AspectJ add-ons available for Borland's JBuilder, Sun's Forte for Java and for the EMACS text editor. Aspect-Oriented Programming with AspectJ introduces AOP and the AspectJ tool. The book also shows how, by using existing Java programming knowledge, the developer can use AOP in meaningful development work.

Sample Content

Table of Contents

(NOTE: Each chapter concludes with a Summary.)

Introduction.

I. INTRODUCTION TO PROGRAMMING WITH ASPECTJ.

1. Why Aspect-Oriented Programming?

Complexity Management. From OO to Aspects. Aspect-Oriented Programming. Meet AspectJ.

2. A First Look at AspectJ.

Quick Setup Guide. Introduction to the Language. How It All Works.

II. STRATEGIES FOR A REAL APPLICATION.

3. Application Description.

Business Requirements and Usage. Architecture. Tools. File Layout. Build Process.

4. Implementation Details.

Presentation Layer. Configuration and Initialization. Database Operations.

5. Crosscutting by Design.

Security. Design by Contract and Other Coding Improvements. Clean Exception Handling.

6. Development Aids.

Logging. Tracing. Profiling.

7. Runtime Improvements.

Buffering. Pooling. Caching.

8. Coping with Change.

New Logging. New Levels of Service.

9. Transition to Deployment.

Catalog of Aspects. Performance of the Aspects. Documentation and Packaging.

III. LANGUAGE DETAILS.

10. Aspects.

Extension. Instantiation. Domination.

11. Picking Join Points: Pointcuts.

Join Points and Pointcuts. Wild Cards. Test Case. call Pointcut. execution Pointcut. get Pointcut. set Pointcut. handler Pointcut. Initialization. staticinitialization Pointcut. within Pointcut. withincode Pointcut. cflow Pointcut. cflowbelow Pointcut. this Pointcut. target Pointcut. args Pointcut. if Pointcut. PointcutId Pointcut. The ! Operation. The && Operation. The || Operation. Using Parentheses. Context.

12. Advices.

Introductory Notes. The before Advice. The after Advice. The around Advice. Precedence Rules.

13. Static Crosscutting.

Test Case. Field Introduction. Method Introduction. Constructor Introduction. Access Rules and Privileged Aspects. Extension. Implementation. Warnings and Errors. Softened Exceptions.

IV. CONCLUSION.

14. Use Patterns.

Shooting Yourself in the Tail. We Want It All. Following the Recursion Path. Getting in Synch. Hyper-Cutting. A Word of Caution.

V. APPENDIXES.

Appendix A. AspectJ API.

Interfaces JoinPoint and JoinPoint.StaticPart. Interface Signature and Its Subinterfaces. Interface SourceLocation. Exceptions. An Example.

Appendix B. AspectJ Command-Line Tools.

The ajc Tool. Ajdoc.

Appendix C. Auxiliary Tools.

Tomcat. MySQL Database. Ant.

Appendix D. Quick Language Reference.

Aspect. Aspect Association. Type Patterns. Advice. Pointcut Designators. Introduction.

Appendix E. AspectJ Project.

Project at PARC. Contact Information. Community Participation and Support.

Appendix F. References.
Chapter G. Glossary.
Index.

Updates

Submit Errata

More Information

Unlimited one-month access with your purchase
Free Safari Membership