Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/sanchezih/solid-java
Repositorio que contiene ejemplos de aplicacion de los principios SOLID en Java.
https://github.com/sanchezih/solid-java
java-21 maven solid-principles
Last synced: 1 day ago
JSON representation
Repositorio que contiene ejemplos de aplicacion de los principios SOLID en Java.
- Host: GitHub
- URL: https://github.com/sanchezih/solid-java
- Owner: sanchezih
- Created: 2024-07-11T12:51:53.000Z (4 months ago)
- Default Branch: main
- Last Pushed: 2024-07-22T02:03:28.000Z (4 months ago)
- Last Synced: 2024-07-22T03:24:23.566Z (4 months ago)
- Topics: java-21, maven, solid-principles
- Language: Java
- Homepage:
- Size: 37.1 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# SOLID
![GitHub last commit](https://img.shields.io/github/last-commit/sanchezih/solid-java)
![GitHub repo size](https://img.shields.io/github/repo-size/sanchezih/solid-java)SOLID es un conjunto de principios extraidos de los escritos de Robert C. Martin a principios de la decada de 2000. Se propuso como una forma de pensar especificamente en la calidad de la programacion orientada a objetos (OO). En conjunto, los principios SOLID presentan argumentos sobre como se debe dividir el codigo, que partes deben ser internas o expuestas y como el codigo debe usar otro codigo.
## Principios
| Inicial | Acronimo | Concepto |
|:-:|:-:|---|
| S | SRP | Principio de responsabilidad unica (Single responsibility principle): Cada clase debe tener un unico proposito y no estar llena de funcionalidad excesiva. |
| O | OCP | Principio de abierto/cerrado (Open/closed principle): Las clases deben estar abiertas para extension y cerradas para modificacion. En otras palabras, no se deberia tener que reescribir una clase existente para implementar nuevas funciones. |
| L | LSP | Principio de sustitucion de Liskov (Liskov substitution principle): Esto significa que cada subclase debe ser sustituible por su superclase. |
| I | ISP | Principio de segregacion de la interfaz (Interface segregation principle): Las interfaces no deberian obligar a las clases a implementar lo que no pueden hacer. Las interfaces grandes deben dividirse en interfaces mas chicas. |
| D | DIP | Principio de inversion de la dependencia (Dependency inversion principle): Los componentes deberian depender de abstracciones y no de clases concretas. |