The GoF patterns, grouped the usual way, plus the principles underneath them
and the smells u get when u ignore them.
The patterns are easy to name and hard to tell apart, so there is a
comparison row for the ones that look the same (Strategy and Command).
Drawings
Patterns
| Group | Patterns |
|---|
| Creational | Singleton, Factory Method, Abstract Factory, Builder, Prototype |
| Structural | Adapter, Bridge, Composite, Decorator, Facade, Proxy |
| Behavioral | Template, Mediator, Memento, Strategy, Observer, Chain of Responsibility, Command, State, Visitor |
Principles
| Topic | Items |
|---|
| How to study patterns | Approach used throughout the canvas |
| Software design | Coupling, cohesion (good design = low coupling + high cohesion) |
| SOLID | SRP, OCP, LSP, ISP, DIP |
| Pattern comparisons | Strategy vs Command |
Anti-patterns & code smells
| Group | Items |
|---|
| Anti-patterns | Blob / Large God Class, Spaghetti Code, Poltergeist, Functional Decomposition, Cut and Paste Programming, Lava Flow / Dead Code, Swiss Army Knife |
| Bloaters | Long Method, Large Class, Primitive Obsession, Long Parameter List |
| OO Abusers | Procedural style in OO, function-named classes |
| Dispensables | Unused code, old commented blocks, duplicate logic |
| Couplers | Coupling between classes |
| Change Preventers | Hard-to-follow logic, hard-to-maintain code |
Resources
The links I actually used, pulled straight off the canvas. One row per video.
0 items under this folder.