Course Summary
This 2-day course provides an introduction to aspect-oriented programming and its role in enterprise application development. Using the very latest AOP support in Spring 2.0 and AspectJ, attendees will gain practical experience in developing and using aspects to produce more flexible, maintainable, and higher quality applications. Delegates will leave with knowledge that can be applied to immediate benefit on their own projects.
Duration
2 days.
Objectives
Upon completion of this course, delegates will:
- Understand what AOP is and the kind of problems it can solve
- Know the fundamentals of Spring AOP and AspectJ, the two leading AOP solutions
- Be able to choose the most appropriate AOP approach for a given situation
- Have the practical knowledge needed to start introducing AOP in their own project
- Know how to use aspect libraries
- Understand the use of aspects for protecting design modularity, transactions, security, management, profiling, tracing, failure handling, optimistic concurrency, caching, domain models, and more!
- Have at their disposal a proven roadmap for exploiting AOP in their own organisation
Audience
This Aspect Oriented Programming (AOP) course benefits experienced Java developers who want to learn what AOP really is and how they can use it in their everyday work. The course is also suitable for hands-on architects and team leads who want to assess how and when to start introducing AOP to their own projects and organisations.
This Aspect Oriented Programming (AOP) course assumes that participants have a good understanding of object-oriented programming and the Java language, as well as a basic knowledge of Spring dependency injection and bean configuration.
Additional Notes
This AOP course places a heavy emphasis on gaining practical skills for using AOP in your own projects. There are a number of labs and exercises and approximately a 50-50 split between presentation-based instruction and hands-on application.
Outline
Day 1:
- What is AOP
- Approaches to AOP
- Writing Pointcut Expressions, Part 1
- Design-level Assertions
- Advice
- Writing Pointcut Expressions, Part 2
- Using an Aspect Library
- Writing Infrastructure Aspects
- Aspects and Annotations
- Adoption Roadmap