Heard about aspect-oriented programming, but not sure of its relevance to
plug-in and RCP development? This tutorial will introduce the basics of
aspect-oriented programming and show you how to use the AspectJ Development
Tools for your plug-in projects, as well as for regular Java applications.
Attendees will see examples of how AOP can be used to implement some patterns
common to plug-in development, packaged as a series of exercises that can be
taken away for later study.
AspectJ is a seamless aspect-oriented programming (AOP) extension to Java. It
can be used to cleanly modularise the crosscutting structure of concerns such
as exception handling, security policies, performance optimisations, and
resource sharing. Without using aspect-orientation, the code for these concerns
is typically scattered and tangled throughout entire programs. AspectJ controls
such effects in the code, which makes the underlying concerns more apparent, in
turn making programs easier to develop and maintain.
Matt Chapman works in the IBM Java technology centre in the UK as Project Lead for the AJDT Eclipse Tools project, developing the tools and user interface experience to allow developers to get the maximum benefit from AOP.
Matthew Webster joined IBM in 1989 with a degree in Physics with Computer Science from Southampton University and since then has worked on a number of software projects at the Hursley lab. He moved to the IBM Java Technology Centre in 1997 initially as a technology evangelist then working on the restructure of the IBM JVM and leading the development of advanced Garbage Collection and Class Loading features. Matthew is a senior software engineer developing AOP technology for use in IBM software products since 2002 and is co-author of a book on AspectJ and Eclipse published last year. He is a committer on the AspectJ project and leads the Aspects Equinox Incubator.