Design Patterns Episodes

This episode is a direct request from an emailer that wanted to know how to abstract away WCF services to allow for better abstraction and simplier unit tests. In this episode we will take a look at the pain points around having direct knowledge of a web service can bring for not only testing, but in running your application. Once we understand the pain points we will take a look at how to abstract them away with the adapter pattern.

In this episode we are going to take a look at how to use the Iterator Design Pattern.

We will look at how using the Iterator Pattern can help you abstract the way in which you interact with a collection of data. This is helpful when you are working with various formats but you would like to create a constant way to work with each format.

In this episode we are going to take a look at how to use the specification pattern.

Business logic is the heartbeat of our application. It is what makes your application worth something to the business. In this episode we will explore the Specification Pattern and see how this simple pattern take your complex business logic and turn it into a more manageable and readable piece of art.

In this episode we will take at how we can use the Mediator Pattern in our application.

.The Mediator pattern allows us to create a loosely coupled system by creating a set of objects which encapsulates the way that sets of objects interact with each other. By removing this behavior from the individual objects you reduce their responsibility and reduce coupling

In this episode we will take at how we can use the Decorator Pattern in our application.

The decorator pattern is a structural pattern which allows you to attach new or additional
actions to an object dynamically. Using the decorator pattern provides a very clean and flexible alternative to subclassing (via inheritance) your object and thus creating an unwanted inheritance tree

In this episode we will take at how we can use the Observer Pattern in our application.

This is a follow up episode to Episode 108 where we take another look at this pattern and how we can implement it using either call backs or events. The Observer pattern allows you to define a one-to-many relationship inside your application where the parent object (the one) has the ability to notify the child objects (the many) of any state change. You can utilize this pattern to make sure that a set of objects are keep in order when there behavior needs to change based on the state of your application.

In this episode we will take a look at how we can use the State Pattern in our application.

The State pattern is designed to allow you to create a way to reset or change how an object will act when its state is changed. By utilizing this pattern you can cleanly and easliy setup your application to be state away and be able to make decisions based on the given state

In this episode we will take at how we can use the Observer Pattern in our application.

The Observer pattern allows you to
define a one-to-many relationship inside your application where the parent object (the one) has the ability to notify the child objects (the many) of
any state change. You can utilize this pattern to make sure that a set of objects are keep in order when there behavior needs to change based on the
state of your application.

In this episode we take a how you can use the Template Design Pattern in your applications.

The Template Design
Pattern is perhaps one of the most widely used and useful design pattern. It is used to set up the outline or skeleton of an algorithm,
leaving the details to specific implementations later. This way, subclasses can override parts of the algorithm without changing its
overall structure.