SOLID explained
In software programming, SOLID is a mnemonic acronym for five design principles intended to make object-oriented designs more understandable, flexible, and maintainable. Although the SOLID principles apply to any object-oriented design, they can also form a core philosophy for methodologies such as agile development or adaptive software development.
Principles
Origin
Software engineer and instructor, Robert C. Martin,[7] [8] [9] introduced the collection of principles in his 2000 paper Design Principles and Design Patterns about software rot.[10] The SOLID acronym was coined around 2004 by Michael Feathers.[11]
See also
Notes and References
- Web site: Single Responsibility Principle. usurped. https://web.archive.org/web/20150202200348/http://www.objectmentor.com/resources/articles/srp.pdf. 2 February 2015. objectmentor.com.
- Book: Robert Cecil Martin
. Martin. Robert C.. Agile Software Development, Principles, Patterns, and Practices. Prentice Hall. 2003. 978-0135974445. 95. Robert Cecil Martin.
- Web site: Open/Closed Principle. usurped. https://web.archive.org/web/20150905081105/http://www.objectmentor.com/resources/articles/ocp.pdf. 5 September 2015. objectmentor.com.
- Web site: Liskov Substitution Principle. usurped. https://web.archive.org/web/20150905081111/http://www.objectmentor.com/resources/articles/lsp.pdf. 5 September 2015. objectmentor.com.
- Web site: 1996. Interface Segregation Principle. usurped. https://web.archive.org/web/20150905081110/http://www.objectmentor.com/resources/articles/isp.pdf. 5 September 2015. objectmentor.com.
- Web site: Dependency Inversion Principle. usurped. https://web.archive.org/web/20150905081103/http://www.objectmentor.com/resources/articles/dip.pdf. 5 September 2015. objectmentor.com.
- Web site: Martin . Robert C. . Robert C. Martin . Principles Of OOD . live . https://web.archive.org/web/20140910201842/http://butunclebob.com/ArticleS.UncleBob.PrinciplesOfOod . Sep 10, 2014 . 2014-07-17 . ButUncleBob.com. . (Note the reference to "the first five principles", although the acronym is not used in this article.) Dates back to at least 2003.
- Web site: Martin . Robert C. . 13 Feb 2009 . Getting a SOLID start . live . https://web.archive.org/web/20130917122741/https://sites.google.com/site/unclebobconsultingllc/getting-a-solid-start . Sep 17, 2013 . 2013-08-19 . Uncle Bob Consulting LLC (Google Sites).
- Web site: Metz . Sandi . Sandi Metz . May 2009 . SOLID Object-Oriented Design . live . https://ghostarchive.org/varchive/youtube/20211221/v-2yFMzxqwU . 2021-12-21 . 2019-08-13 . YouTube. Talk given at the 2009 Gotham Ruby Conference.
- Web site: Martin, Robert C. . 2000 . Design Principles and Design Patterns . usurped . https://web.archive.org/web/20150906155800/http://www.objectmentor.com/resources/articles/Principles_and_Patterns.pdf . 2015-09-06 . objectmentor.com.
- Book: Martin, Robert. Clean Architecture: A Craftsman's Guide to Software Structure and Design. 2018. 9780134494166. 58. Prentice Hall .