Architecture and Design Patterns
2019-08-20
#### Dependencies
Dependencies
Design Patterns iOS Development iOS Skill Tree
Index
- The six principles of design
- The purpose and goals of architecture
The Seven Principles of Design
S | Single Responsibility Principle | Single Responsibility Principle O | Open Close Principle | Open Close Principle L | Liskov Substitution Principle | Liskov Substitution Principle I | Interface Segregation Principle | Interface Segregation Principle D | Dependence Inversion Principle | Dependence Inversion Principle L | Law Of Demeter | Law of Demeter C | Composite/Aggregate Reuse Principle | CARP Composite/Aggregate Reuse Principle
⚠️ Object-oriented SOLID principles
Single Responsibility Principle
- A class should have only one responsibility.
Open Close Principle
- Changes to software entities are best made by extension rather than modification.
Liskov Substitution Principle
- Subclasses may extend a parent class's methods, but should not override them.
Interface Segregation Principle
- An object should not be forced to depend on methods it does not use.
Dependence Inversion Principle
- Program to interfaces; extract the essence and commonality of things.
Law of Demeter
- An object should keep its knowledge of other objects to a minimum, achieving low coupling and high cohesion.
Composite/Aggregate Reuse Principle
- In other words: use inheritance sparingly and favor composition instead.