Rock SOLID Software

A session at Central Ohio Software Symposium

Saturday 9th June, 2012

1:30pm to 3:00pm (EST)

Object-oriented programming was formally introduced in the 1970's with the advent of Smalltalk. C++ took it mainstream in the 1980's, and Java carried it to the next level in the 1990's. Unfortunately, if you examine the vast majority of Java codebases, what you'll find is a bunch of C-style structs (a.k.a. JavaBeans) and functions. As these codebases grow, a number of design smells can potentially crop up, which in turn cripple our ability to respond to change. We need SOLID principles that we can apply to keep our software clean and malleable.

Robert C. "Uncle Bob" Martin identified several design smells in his book Agile Software Development: Principles, Patterns, and Practices:

  • Rigidity
  • Fragility
  • Immobility
  • Viscosity
  • Needless Complexity
  • Needless Repetition
  • Opacity

We can reverse and in fact avoid these techniques by following the principles of SOLID software design:

• Single Responsibility
• Open-Closed
• Liskov Substitution
• Interface Segregation
• Dependency Inversion

You'll leave this session equipped to ferret out design smells and apply these principles on your next project.

About the speaker

This person is speaking at this event.
Matt Stine

Product Manager for @springcentral on @pivotalcf. DevOps/Continuous Delivery/Microservices junkie. Christian, husband, dad, Flufftalker @NoFluff. bio from Twitter

Sign in to add slides, notes or videos to this session

Tell your friends!


Time 1:30pm3:00pm EST

Date Sat 9th June 2012

Short URL


Official session page


View the schedule


See something wrong?

Report an issue with this session