Introduction to Applications of Design Patterns

Get introduced to the problems design patterns are intended to solve.

This chapter lists common types of software problems that software developers face. For each of these problems, suitable design patterns are listed.

Summary of design patterns for each software problem

In this chapter, there’s a brief description of how it’s structured, what it does, and why it can solve a specific type of problem. Then, at the end of this part, we summarize all the problems that we’ve covered, and for each of them, we summarize the pros and cons of each design pattern that can solve it.

This chapter serves two purposes. First, it’s much easier to learn by association. Software problems are something that every software developer can easily imagine. Some of these problems would be something that they’re personally familiar with. Design patterns, on the other hand, are something that won’t make a lot of sense right away if we’re new to them. This is why we first start with the problems’ descriptions before we learn the actual design patterns.

Second, this structure makes it easy to look up suitable design patterns for those who don’t know them. If we, as programmers, are facing a challenging problem at work, the last thing we’d want to do is go through the descriptions of all design patterns and try to figure out which ones can help us solve the problem at hand. We’d want to find the description of the problem we’re facing and then use it to look up any suitable design patterns. If there’s more than one, we’d want to know the pros and cons of each design pattern to assess which one of them fits our specific situation better. Only then would we want to know how to implement it.

So, let’s use this chapter both as a learning guide and as a reference source.

Create a free account to view this lesson.

By signing up, you agree to Educative's Terms of Service and Privacy Policy