
Chris RichardsonChris Richardson Consulting, Inc.Improving Your Code with POJOs, Dependency Injection, AOP, and O/R MappingWe have all been frustrated by difficult to maintain code. Some code is difficult to maintain because it does too much - e.g. handling transactions, persistence and security, as well as implementing business rules. Changing that kind of code requires you to understand and tackle many different concerns. Other code might be difficult to maintain because the implementation of a particular feature (e.g. audit logging) is scattered throughout the code base. Changing the implementation of that kind of feature involves changing many components. This talk describes how to improve the maintainability of enterprise Java applications by using dependency injection (DI), O/R mapping (ORM) and Aspect Oriented Programming (AOP). We will show how you can implement business logic using POJOs that are decoupled from infrastructure concerns such as persistence, security and transaction management. We will also describe how to modularize concerns such as audit logging that are normally implemented by code that is mixed in with the business logic. The presentation has numerous Spring, Hibernate, and AspectJ examples. Improving Your Application's Design by Using Real ObjectsJava is an object-oriented language, yet surprisingly many enterprise Java applications are written in a procedural style. In this presentation you will learn about how to implement business logic using real objects - a rich POJO domain model. We will compare and contrast a procedural design with an object-oriented design and describe the benefits of using real objects. You will learn how infrastructure frameworks such as Spring, and Hibernate provide dependency injection, transaction management, security and persistence for a domain model. We will also cover how to refactor a procedural design into an object-oriented design - an easy way to immediately improve the design of your application.
|
© 1997 2008 Kovsky Conference Productions Inc.; All rights reserved.