alextanhongpin / design-patterns

a collection of design patterns in that I used

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Design Patterns

6 things you need to know about design pattern.

  1. There are 3 categories of design pattern - creational patterns, structural patterns and behavioral patterns.
  2. The Model-View-Controller (MVC) architecture is not a design pattern.
  3. One of the most comprehensive book on design pattern is Design Patterns: Elements of Reusable Object-Oriented Software written by the so-called "Gang of Four".
  4. Design patterns can be combined to form super-patterns.
  5. Frameworks are not design patterns, but they do implement design patterns.
  6. The opposite of design pattern is anti-pattern.

Others

  • design patterns is not to instruct you how to build software, but rather to give guidance on ways in which to solve common problems
  • design patterns provide hints on how to solve common problem

Three Major Groups

  • Creational: outline a number of ways in which objects could be created and their lifecycles managed
  • Behavioral: describe how objects interact with each other
  • Structural: describes a variety of different ways to add functionality to existing objects

Anti-Patterns

  • The Blob, a.k.a god object, is a pattern in which one object grows to take on the responsibility for vast swaths of the application logic.
  • Lava Flow is a pattern that emerges as project ages and nobody knows if code is still in used.

Design Patterns Resources

Books
  1. Design Patterns: Elements of Reusable Object-Oriented Software by The "Gang of Four"
  2. Learning JavaScript Design Patterns by Andy Osmani
  3. Pro JavaScript Design Patterns: The Essentials of Object-Oriented JavaScript Programming by Dustin Diaz

http://loredanacirstea.github.io/es6-design-patterns/#abstract-factory

About

a collection of design patterns in that I used


Languages

Language:Python 46.0%Language:JavaScript 35.0%Language:TypeScript 19.0%