O'Reilly Emerging Technology Conference.
Books Safari Bookshelf Conferences O'Reilly Network

Arrow Home
Arrow Registration
Arrow Speakers
Arrow Keynotes
Arrow Tutorials
Arrow Sessions
Arrow At-a-Glance
Arrow BOFs
Arrow Community
Arrow Events
Arrow Exhibitors
Arrow Sponsors
Arrow Hotel/Travel
Arrow Venue Map
Arrow See & Do
Arrow Press
Arrow Join Mailing List 

April 22-25, 2003, Santa Clara -Explore. Invent. Connect.


CANCELLED Aspect-Oriented Programming with AspectJ
Ron Bodkin, New Aspects
Erik Hilsdale
Gregor Kiczales, NSERC, Xerox, Sierra Software Design Chair

Track: Emerging Technology Tutorial
Date: Tuesday, April 22
Time: 1:30pm - 5:00pm
Location: Camino Real

AspectJ is a seamless aspect-oriented extension to Java. It can be used to cleanly modularize the crosscutting structure of concerns such as exception handling, security enforcement, testing, synchronization, performance optimizations, and resource sharing.

When implemented in a non-aspect-oriented fashion, the code for these concerns typically becomes spread out across entire programs. AspectJ controls such code-tangling and makes the underlying concerns more apparent, so programs are easier to develop and maintain.

Bodkin?s tutorial introduces Aspect-oriented programming and shows how to use AspectJ to implement crosscutting concerns in a concise, modular way. He also demonstrates and uses AspectJ's integration with IDEs such as JBuilder, NetBeans, Emacs, and Eclipse, in addition to the core AspectJ tools.

AspectJ is freely available at http://eclipse.org/aspectj

Attendees should have experience doing object-oriented design and implementation, and should be able to read Java code. No prior experience with aspect-oriented programming or AspectJ is required.

Bodkin provides additional background: "I was previously the CTO of C-bridge, which built systems for clients using Java that connected to enterprise systems. We created frameworks to capture patterns of use, but I saw some significant drawbacks to traditional OO frameworks. I was excited by Aspect-Oriented Programming (AOP) and as I investigated I realized how much better a solution it offered. I joined Xerox PARC to apply the technology to the enterprise.

"AspectJ is the next big step in software modularity. Object orientation was the last big step. That's very cool and always a bit controversial (remember how many people denounced OO or said 'you can do the same thing in C/Pascal/'?).

"After the tutorial, attendees should be able to modularize crosscutting concerns. This ranges from development-time uses like tracing and non-invasive mock objects for testing up to critical subsystems like fine-grained authorization policies, persistence implementations, and error handling.

"In the field of software, I believe we are moving towards a world in which we can build high quality, extremely flexible systems for far less cost. Because software is what delivers the value to end uses, this promises to unleash a tidal wave of innovation and improvement. I don't expect to see truly intelligent machines in my life time, but I think we will have much more sophisticated, integrated, configurable software for large organizations, for individuals, and everything in between. It will be able to act as our agent and as a 'coach' helping us organize our activities and giving us tireless feedback."

O'Reilly Home | Privacy Policy

© 2002, O'Reilly Media, Inc.