An open API service indexing awesome lists of open source software.

https://github.com/kazemmdev/solid


https://github.com/kazemmdev/solid

Last synced: 2 months ago
JSON representation

Awesome Lists containing this project

README

        

# SOLID Principles

SOLID As Robert Martin introduced them in the book
[_Agile Software Development, Principles, Patterns, and Practices_](https://refactoring.guru/principles-book) is five
design principles intended to make software design more understandable, flexible and maintainable.

## Single Responsibility Principles

> A class should have just one reason to change.

## Open/Closed Principle

> Classes should be open for extension but closed for modification.

## Liskov Substitution Principle

> When extending a class, remember that you should be
able to pass objects of the subclass in place of objects of
the parent class without breaking the client code.

## Interface Segregation Principle

> Clients shouldn’t be forced to depend on methods they do not use.

## Dependency Inversion Principle

> High-level classes shouldn’t depend on low-level classes.
Both should depend on abstractions. Abstractions
shouldn’t depend on details. Details should depend on
abstractions.