This Thursday we celebrate birthday of our dear colleague Ladislav. Meanwhile, our equally dear colleague Darko held a lecture about SOLID Principles.


SOLID Principles represents a coding standard that all developers should have. It is a clear concept for developing software in a proper way to avoid bad design. Robert C Martin introduced these principles, and since then they have been used across the object-oriented design spectrum.

SOLID is a mnemonic acronym for five design principles which make software designs more understandable, flexible and maintainable.

The “S” stands for the Single responsibility principle. It means that a class should have only a single responsibility. For example, only changes to one part of the software’s specification should be able to affect the specification of the class.

The “O” stands for the Open/closed principle. It means that the software entities should be open for extension, but closed for modification.

The “L” is for Liskov substitution principle. Basically, the objects in a program should be replaceable with instances of their sub-types without altering the correctness of that program.

The letter “I” represents the Interface segregation principle. This principle says that many client-specific interfaces are better than one general-purpose interface.

The “D” stands for Dependency invasion principle and explains that one should depend upon abstractions, (not) concretions.

If you are interested in learning more about this topic, please click on the link below the text. And, if you want to know whats happening here at Sipod follow us on Facebook and Twitter.