Jeremy Miller rss

  • Patterns in Practice: The Open Closed Principle
    Extending an existing codebase can be as productive and frustration-free as writing all new code when you employ the Open Closed Principle. We'll show you how.
    Jeremy Miller - June 2008
  • Patterns in Practice: Object Role Stereotypes
    Object role stereotypes can help you better understand and clarify the responsibilities of the objects in your application.
    Jeremy Miller - August 2008
  • Patterns in Practice: Persistence Patterns
    Here we examine data persistence patterns to help you determine which best suits your needs. We look at a number of patterns, including the Active Record, the Data Mapper, the Repository, the Identity Map, the Lazy Loading, and the Virtual Proxy.
    Jeremy Miller - April 2009
  • Patterns in Practice: Convention Over Configuration
    We look at some techniques you can adopt to reduce the amount of housekeeping code you write so you can focus on the essence of the application.
    Jeremy Miller - February 2009
  • Patterns in Practice: Design For Testability
    Designing testability into your app means smaller tests that are cheaper to create, easier to understand, faster to run, and much simpler to debug.
    Jeremy Miller - December 2008
  • Patterns in Practice: Cohesion And Coupling
    Here are some design patterns that allow you to achieve higher cohesion and looser coupling for more flexible, reusable applications.
    Jeremy Miller - October 2008
  • Patterns in Practice: The Unit Of Work Pattern And Persistence Ignorance
    Jeremy Miller continues his discussion of persistence patterns by reviewing the Unit of Work design pattern and examining the issues around persistence ignorance.
    Jeremy Miller - June 2009
  • Patterns in Practice: Incremental Delivery Through Continuous Design
    The end goal of software projects is to deliver value to the customer. Software design is a major factor in how successfully a team can deliver that value. The best designs are a product of continuous design rather than the result of an effort that tries to get the entire design right up front. This approach lets you strive to apply lessons learned from the project to continuously improve the design, instead of becoming locked into an erroneous design developed too early in the project.
    Jeremy Miller - August 2009