DesignPatterns

Design Patterns

Design patterns are typical solutions to common problemsin software design. Each pattern is like a blueprintthat you can customize to solve a particulardesign problem in your code.

Catalog of patterns

Catalog of patterns

List of 22 classic design patterns,grouped by their intent.

Benefits of patterns

Benefits of patterns

Patterns are a toolkit of solutions to commonproblems in software design. They definea common language that helps your teamcommunicate more efficiently.

Classification

Classification of patterns

Design patterns differ by their complexity, level ofdetail and scale of applicability. In addition,they can be categorized by their intentand divided into three groups.

History of patterns

History of patterns

Who invented patterns and when?Can you use patterns outside softwaredevelopment? How do you do that?

Criticism of patterns

Criticism of patterns

Are patterns as good as advertised?Is it always possible to use them?Can patterns sometimes be harmful?

Dive IntoDesign Patterns

Design patterns book

Check out our ebook on designpatterns and principles. It's available inPDF/ePUB/MOBI formats and includes thearchive with code examples inJava, C#, C++, PHP, Python, Ruby,Go, Swift, & TypeScript.