Ramnivas Laddad

Upcoming Talks

Making sense of AOP choices
Processing annotations with AOP

Selected Publications

Books:

This book, which has been labeled as the most useful guide to AOP/AspectJ, explains the AOP methodology and the AspectJ language. This book shows modularizing system-wide concerns such as logging, policy enforcement, resource pooling, caching, thread-safety, authentication and authorization, transaction processing, and business rule by synergistically combining AspectJ with technologies such as log4j, JAAS, JTA, JDBC, Swing, and Jess.

Articles:

Like any new and exciting technology, AOP has generated its fair share of buzz, and also its fair share of myths and misunderstandings. After following AOP coverage on the Web and listening to the questions asked at conferences, I started to see some common themes (or myths) that deserve to be cleared up.
AOP and metadata: A perfect match (March 2005)
Metadata is a way to express additional information about program elements. The new metadata facility in the Java programming language enables the use of typed annotations. Using metadata is quite simple, although consuming it brings up many choices. Aspect-oriented programming presents itself as a principled consumer of metadata. The join point model augmented with metadata makes AOP accessible by facilitating simpler pointcuts for crosscutting concerns that would not be so easily specified by stable signature-based pointcuts.
Aspect oriented refactoring series at TheServerSide.com (December 2003)
Refactoring, a process and a set of techniques to reorganize code while preserving the external behavior, has gained popularity due to its practical value in creating agile code. Recently, aspect-oriented programming (AOP) has received increased attention due to its power in encapsulating crosscutting concerns in a system through use of a new unit of modularity called an aspect. Aspect-oriented refactoring (AO refactoring) synergistically combines these two techniques to refactor crosscutting elements. In this two-part series, we will examine the fundamentals of AO refactoring, the steps involved in the process, and a few common techniques.
I want my AOP! series at JavaWorld.com (January-April 2002)
Most software systems consist of several concerns that crosscut multiple modules. Object-oriented techniques for implementing such concerns result in systems that are invasive to implement, tough to understand, and difficult to evolve. The new aspect-oriented programming (AOP) methodology facilitates modularization of crosscutting concerns. Using AOP, you can create implementations that are easier to design, understand, and maintain. Further, AOP promises higher productivity, improved quality, and better ability to implement newer features. This article, the first in a three-part series, introduces the AOP concept and the problems it attempts to solve.

Bio

is an author, speaker, consultant, and trainer specializing in aspect-oriented programming and J2EE. His most recent book, "AspectJ in Action: Practical aspect-oriented programming" (Manning, 2003), has been labeled as the most useful guide to AOP/AspectJ. He has been developing complex software systems using technologies such as Java, J2EE, AspectJ, UML, networking, and XML for over a decade. Ramnivas is an active member of the AspectJ community and has been involved with aspect-oriented programming from its early form. He speaks regularly at many conferences such as JavaOne, No Fluff Just Stuff, JavaPolis, Software Development, EclipseCon, and O'Reilly OSCON. Ramnivas lives in Princeton, New Jersey.
CodeCamp at FootHill College.  Click Here for Details and Registration