Skip to content

S.O.L.I.D Design Principles --This repository contains examples of the five SOLID design principles of object-oriented programming. The examples are written in Java. version to demonstrate adherence to and violation of the principle, respectively.

License

Notifications You must be signed in to change notification settings

Ahmedomarpro/SOLID-Design-Principles

Repository files navigation

SOLID-Design-Principles

  • Single responsibility principle - A class should have only one reason to change.

  • Open/Closed principle - Software entities (classes, modules, functions, etc.) should be open for extension, but closed for modification.

  • Liskov Substitution Principle - Child classes should never break the parent class type definitions.

  • Interface Segregation Principle - No client should be forced to depend on methods it does not use.

  • Dependency inversion principle - High-level modules should not depend on low-level modules. Both should depend on abstractions. Abstractions should not depend upon details. Details should depend upon abstractions.

Image description

is an acronym for the first five object-oriented design(OOD) principles by Robert C. Martin, popularly known as Uncle Bob.

These principles, when combined together, make it easy for a programmer to develop software that are easy to maintain and extend. They also make it easy for developers to avoid code smells, easily refactor code, and are also a part of the agile or adaptive software development.

About

S.O.L.I.D Design Principles --This repository contains examples of the five SOLID design principles of object-oriented programming. The examples are written in Java. version to demonstrate adherence to and violation of the principle, respectively.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages