SOLID (object-oriented design)
SOLID |
---|
Principles |
In computer programming, the term SOLID is a mnemonic acronym for five design principles intended to make software designs more understandable, flexible and maintainable. The principles are a subset of many principles promoted by Robert C. Martin, [1][2][3]. Though they apply to any object-oriented design, the SOLID principles can also form a core philosophy for methodologies such as agile development or Adaptive Software Development.[3] The SOLID acronym was introduced by Michael Feathers.
Overview
Initial | Stands for | Concept |
---|---|---|
S | SRP[4] |
|
O | OCP[5] |
|
L | LSP[6] |
|
I | ISP[7] |
|
D | DIP[9] |
|
See also
Basic concepts and related topics
- Adaptive Software Development
- Agile programming
- Code reuse
- Computer programming
- Object-oriented programming
Design and development principles
References
- ↑ “Principles Of OOD”, Robert C. Martin (“Uncle BOB”), butunclebob.com, Last verified 2014-07-17. (Note the reference to “the first five principles”, though the acronym is not used in this article.) Dates back to at least 2003.
- ↑ “Getting a SOLID start.”, Robert C. Martin (“Uncle Bob”), objectmentor.com. Last verified 2013-08-19.
- 1 2 “SOLID Object-Oriented Design”, Sandi Metz (Duke University), Talk given at the 2009 Gotham Ruby Conference in May, 2009. Last verified 2009-01-15.
- ↑ "Single Responsibility Principle" (PDF). Archived from the original (PDF) on 1 June 2015.
- ↑ "Open/Closed Principle" (PDF). Archived from the original (PDF) on 5 September 2015.
- ↑ "Liskov Substitution Principle" (PDF). Archived from the original (PDF) on 5 September 2015.
- ↑ "Interface Segregation Principle" (PDF). 1996. Archived from the original (PDF) on 5 September 2015.
- 1 2 Robert C. Martin (“Uncle Bob”) (2000), Design Principles and Design Patterns (PDF), objectmentor.com, archived from the original (PDF) on 6 September 2015, retrieved 2009-01-14
- ↑ "Dependency Inversion Principle" (PDF). Archived from the original (PDF) on 5 September 2015.
This article is issued from
Wikipedia.
The text is licensed under Creative Commons - Attribution - Sharealike.
Additional terms may apply for the media files.