solid development
DESCRIPTION
Slides for my presentation to the January 2010 STL .NET User Group.TRANSCRIPT
![Page 1: Solid Development](https://reader035.vdocuments.mx/reader035/viewer/2022081513/553adbff550346f92f8b45f3/html5/thumbnails/1.jpg)
SOLID Development
Chris Deweese
Photo by basswulf
![Page 2: Solid Development](https://reader035.vdocuments.mx/reader035/viewer/2022081513/553adbff550346f92f8b45f3/html5/thumbnails/2.jpg)
“The truth is, every developer is a little bit of an architect. Some of us just care a little more than the next guy.” (Lessons Learned About Being a Software Architect)
Photo by lrargerich
![Page 3: Solid Development](https://reader035.vdocuments.mx/reader035/viewer/2022081513/553adbff550346f92f8b45f3/html5/thumbnails/3.jpg)
Photo by Steffenz
5 Principles to keep in
mind and apply when you
are writing code.
![Page 4: Solid Development](https://reader035.vdocuments.mx/reader035/viewer/2022081513/553adbff550346f92f8b45f3/html5/thumbnails/4.jpg)
Single Responsibility PrincipleOpen/Closed Principle
Liskov Substitution Principle
Interface Segregation Principle
Dependency Inversion PrinciplePhoto by ilkegb
![Page 5: Solid Development](https://reader035.vdocuments.mx/reader035/viewer/2022081513/553adbff550346f92f8b45f3/html5/thumbnails/5.jpg)
“A class should have one, and only one, reason to change.”
Photo by Tomás Rotger
![Page 6: Solid Development](https://reader035.vdocuments.mx/reader035/viewer/2022081513/553adbff550346f92f8b45f3/html5/thumbnails/6.jpg)
Single Responsibility Principle
Open/Closed PrincipleLiskov Substitution Principle
Interface Segregation Principle
Dependency Inversion Principle
![Page 7: Solid Development](https://reader035.vdocuments.mx/reader035/viewer/2022081513/553adbff550346f92f8b45f3/html5/thumbnails/7.jpg)
“You should be able to extend a classes behavior, without modifying it.”
Photo by laurenmarek
![Page 8: Solid Development](https://reader035.vdocuments.mx/reader035/viewer/2022081513/553adbff550346f92f8b45f3/html5/thumbnails/8.jpg)
Single Responsibility Principle
Open/Closed Principle
Liskov Substitution PrincipleInterface Segregation Principle
Dependency Inversion Principle
![Page 9: Solid Development](https://reader035.vdocuments.mx/reader035/viewer/2022081513/553adbff550346f92f8b45f3/html5/thumbnails/9.jpg)
“Derived classes must be substitutable for their base classes.”
Photo by Jeremy Brooks
![Page 10: Solid Development](https://reader035.vdocuments.mx/reader035/viewer/2022081513/553adbff550346f92f8b45f3/html5/thumbnails/10.jpg)
Single Responsibility Principle
Open/Closed Principle
Liskov Substitution Principle
Interface Segregation PrincipleDependency Inversion Principle
![Page 11: Solid Development](https://reader035.vdocuments.mx/reader035/viewer/2022081513/553adbff550346f92f8b45f3/html5/thumbnails/11.jpg)
“Make fine grained interfaces that are client specific.”
Photo by nosha
![Page 12: Solid Development](https://reader035.vdocuments.mx/reader035/viewer/2022081513/553adbff550346f92f8b45f3/html5/thumbnails/12.jpg)
Single Responsibility Principle
Open/Closed Principle
Liskov Substitution Principle
Interface Segregation Principle
Dependency Inversion Principle
![Page 13: Solid Development](https://reader035.vdocuments.mx/reader035/viewer/2022081513/553adbff550346f92f8b45f3/html5/thumbnails/13.jpg)
“Depend on abstractions, not on concretions.”
Photo by schoeband
![Page 14: Solid Development](https://reader035.vdocuments.mx/reader035/viewer/2022081513/553adbff550346f92f8b45f3/html5/thumbnails/14.jpg)
We can talk about your feelings. Or code. Probably mostly code.
Photo by Jakob Montrasio
![Page 15: Solid Development](https://reader035.vdocuments.mx/reader035/viewer/2022081513/553adbff550346f92f8b45f3/html5/thumbnails/15.jpg)
Uncle Bob’s Principles of OOD http://bit.ly/65ncKX
Hanselminutes #145 – Hanselman & Uncle Bob discuss SOLID http://bit.ly/7inDit
Motivational Posters by Derick Bailey http://bit.ly/4ZE5RV
Code Examples & Tonight’s Presentationhttp://bit.ly/3nOGkq
Photo by Daniel Leininger