En la tecnología de software, SOLID es un
acrónimo que representa un conjunto de cinco principios de
diseño orientado a objetos. Estos principios fueron presentados por
Robert C. Martin en la década de 2000 como una guía para la creación
de software más escalable, flexible y fácil de mantener.
A continuación, se describen brevemente los
cinco principios SOLID:
Principio de Responsabilidad Única (SRP): Cada clase
o módulo debe tener una única responsabilidad, lo que significa que
solo debe haber una razón para que cambie.
Este principio ayuda a evitar la complejidad y la confusión en el
diseño del software.
Principio de Abierto/Cerrado (OCP): Las entidades de software
(clases, módulos, etc.) deben estar abiertas
para la extensión pero cerradas para la modificación. En otras
palabras, se deben poder agregar nuevas
funcionalidades sin tener que modificar el código existente.
Principio de Sustitución de Liskov (LSP): Las clases derivadas deben
ser sustituibles por sus clases base
sin afectar el comportamiento del programa. Este principio garantiza
que el código que usa una clase base
pueda usar cualquier clase derivada de forma segura y coherente.
Principio de Segregación de Interfaces (ISP): Los clientes de un
objeto deben depender solo de las
interfaces que necesitan, en lugar de depender de interfaces que no
utilizan. Este principio ayuda
a evitar la dependencia innecesaria de clases y reduce la
complejidad del sistema.
Principio de Inversión de Dependencia (DIP): Los módulos de alto
nivel no deben depender de módulos
de bajo nivel. En su lugar, ambos deben depender de abstracciones.
Además, las abstracciones no deben
depender de los detalles, sino que los detalles deben depender de
las abstracciones. Este principio
ayuda a reducir el acoplamiento y aumentar la flexibilidad del
sistema.
Seleccionamos un
video con respecto a este tema,
el autor de este es egresado de la Unibague.
Clean Code
Clean Code (Código Limpio) es un término
utilizado en la ingeniería de software para describir un
estilo de programación que se enfoca en escribir código
legible, fácil de entender, mantener y extender en el
tiempo. El objetivo es producir un código claro, conciso
y eficiente, que sea fácil de leer y entender por otros
programadores.
El concepto de Clean Code fue popularizado por Robert C.
Martin en su libro "Clean Code: A Handbook of Agile Software
Craftsmanship", en el que propone una serie de prácticas y
técnicas para producir un código de alta calidad.
Algunas de las características del código
limpio incluyen:
Buena estructura: el código debe estar bien organizado y
estructurado,
de manera que sea fácil de entender y de seguir el flujo de la
lógica.
Nombres descriptivos: las variables, funciones y métodos deben
tener nombres descriptivos y significativos que reflejen su
propósito
y función.
Comentarios útiles: el código debe estar bien documentado con
comentarios
útiles que expliquen la lógica detrás del código, en lugar de
simplemente
describir lo que hace el código.
Funciones pequeñas y cohesivas: las funciones deben ser pequeñas,
cohesivas
y hacer una sola cosa. De esta manera, son más fáciles de entender,
probar
y mantener.
Manejo de errores adecuado: el código debe manejar adecuadamente los
errores y las excepciones, para evitar problemas y comportamientos
inesperados.
Escucha este podcast para concer un poco más de Clean Code.