Speaker Topics - No Fluff Just Stuff

Domain Driven Design: Leveraging power of AOP and DI

Although the back-to-basic ideas behind Domain Driven Design (DDD) aren't new and the value is easily understood, many implementations do not adhere to its principles. For example, while DDD (and, in fact, object-oriented programming) suggest that objects should encapsulate data and behavior, in many systems objects simply merely play the role of data carrier. This disconnect between the ideal and real-world software systems may be due to many obstacles to implementing a rich-domain model. Combining DI with AOP help overcome many obstacles to implementing DDD leading to a true object-oriented systems. This session shows many innovative and powerful techniques utilizing metadata annotations, dependency injection (DI), aspect-oriented programming (AOP), and refactoring to simplify software system implementations following DDD ideas.

In this session, we will examine the need for domain driven design, obstacles to achieving it, the basics of enabling behavior-richness for domain objects, and patterns of usages. Since AOP can extend DI to domain objects, those objects can now collaborate with the injected dependencies to implement complex behavior reflecting their domain. Further, aspects can enforce the architectural policies and design decisions to ensure that the code doesn?t deviate from design. These enforcement aspects may be used even in projects that don?t want to use AOP in production. All of these techniques utilize metadata annotations to communicate metadata associated with programming elements. The knowledge gained through this session will enable you to apply domain driven design to your systems.

Attendees are expected to have basic knowledge of DDD gained by reading books and articles or attending a DDD session.


About Ramnivas Laddad

Ramnivas Laddad is a well-known expert in enterprise Java, especially in the area of AOP and Spring. He is a Spring Framework and Cloud Foundry committer. Ramnivas is also the author of AspectJ in Action, the best-selling book on AOP and AspectJ that has been lauded by industry experts for its presentation of practical and innovative AOP applications to solve real-world problems. He has spoken at many leading industry events including JavaOne, JavaPolis, No Fluff Just Stuff, SpringOne, and O'Reilly OSCON. In recent years, Ramnivas has become a Scala fan. Ramnivas lives in the Silicon Valley.

More About Ramnivas »