This Thursday we celebrate the birthday of our dear colleague Ladislav, while our, also dear, colleague Darko had a lecture about SOLID Principles.

SOLID Principles is a coding standard that all developers should have a clear concept for developing software in a proper way to avoid bad design. It was promoted by Robert C Martin and is used across the object-oriented design spectrum.

The theory of SOLID principles was introduced by Martin in his 2000 paper Design Principles and Design Patterns.

SOLID is a mnemonic acronym for five design principles intended to make software designs more understandable, flexible and maintainable:

Single responsibility principle – a class should have only a single responsibility (i.e. only changes to one part of the software’s specification should be able to affect the specification of the class).

Open/closed principle – software entities should be open for extension, but closed for modification.

Liskov substitution principle “objects in a program should be replaceable with instances of their subtypes without altering the correctness of that program.”

Interface segregation principle – “many client-specific interfaces are better than one general-purpose interface.”

Dependency invasion principle says that one should depend upon abstractions, (not) concretions.

For more info click on the link below