white bar background yellow bar background
Colorado Software Summit 2007 banner
Colorado Software Summit logo

The Best Way to Master a Technology Is to Teach It to Others

Chris Richardson

Chris Richardson Consulting, Inc.

Improving Your Code with POJOs, Dependency Injection, AOP, and O/R Mapping

We 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 Objects

Java 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.

Photo of Chris Richardson

Chris Richardson is a developer, architect and mentor with over 20 years of experience and is the author of the book POJOs in Action. He runs a consulting company, Chris Richardson Consulting, Inc., that helps customers build better software faster. Chris has been a technical leader at a variety of companies, including Insignia Solutions and BEA Systems. Chris holds a computer science degree from the University of Cambridge in England and lives in Oakland, CA.

Chris has taught classes on compilers and operating systems for the University of Maryland in Europe. He has presented at numerous venues including the British Computer Society and OOPSLA. Chris has spoken at various conferences including JavaOne, No Fluff Just Stuff Java Symposium and Javapolis as well as user groups in the bay area.

Blog: http://chris-richardson.blog-city.com/

Email: chris@chrisrichardson.net