1

SOLID: los 5 principios a seguir para desarrollar software de calidad

Uncategorized

SOLID: los 5 principios a seguir para desarrollar software de calidad

La ingeniería de software es un área relativamente nueva. En constante evolución, seguimos aprendiendo de nuestros errores (y de los demás).

Uno de los objetivos que busca el desarrollo de software, es evolucionar para minimizar errores y de esta manera establecer principios y buenas prácticas.

Uno de los conceptos más conocidos es el propuesto por Robert C. Martin, los 5 principios SOLID que al aplicarlos otorgan una serie de ventajas para desarrollar software de calidad.

Pero…¿qué significa S.O.L.I.D?

Es un acrónimo que representa 5 principios básicos de la programación orientada a objetos,  que cuando se aplican efectivamente, es más fácil que un programador cree un sistema que sea fácil de mantener en el tiempo. Estos principios son:

S – Single Responsibility Principle (SRP)

O – Open/Closed Principle (OCP)

L – Liskov Substitution Principle (LSP)

I – Interface Segregation Principle (ISP)

D – Dependency Inversion Principle (DIP)

Ahora, comencemos a desarrollar uno por uno. 

S (Single Responsability Principle)

Este principio expresa que un componente debe tener una única responsabilidad, sencilla y concreta. Es decir, debemos olvidarnos de crear funciones o clases que combinen múltiples funcionalidades y en su lugar debemos de crear funciones que estén estrechamente alineadas con esta única responsabilidad. Si un objeto tiene un sólo cometido, éste será más fácil de mantener.

O (Open – Closed Principle)

Este principio expresa que los componentes deben ser abiertos para su extensión, pero cerrados para su modificación. Esto significa que los programas deben permitir añadir funcionalidad adicional pero sin modificar la existente.

L (Liskov Subsitution Principle)

Este principio expresa que los objetos de un programa deben ser remplazados por instancias de subtipos sin alterar el correcto funcionamiento. Explica como utilizar correctamente la herencia y el polimorfismo, herramientas muy poderosas en programación orientada a objetos si son aplicados correctamente.

I (Interface Segregation Principle)

Principio que expresa que los objetos de un programa no deberían verse forzados a implementar métodos que no van utilizar, debido a que provoca una innecesaria dependencia entre los clientes.  Por ejemplo, si tenes varios programas que implementan una interfaz, pero resulta que uno de ellos no la utiliza, este programa será afectado por los cambios que obligan otros programas.

D (Dependency Inversion Principle)

Principio que expresa que los componentes deben depender de abstracciones y no de implementaciones. La inyección de dependencias es una técnica que sigue este principio. Básicamente es un patrón de diseño que permite desacoplar unos módulos de otros.

Conclusión

Entonces… Los principios SOLID son eso: principios, es decir, buenas prácticas que pueden ayudar a mantener un código más legible, menos acoplado, reutilizable y de mejor calidad.

Como indica el propio Robert C. Martin, no se trata de reglas, ni leyes, ni verdades absolutas, sino más bien soluciones de sentido común a problemas comunes, basados en la experiencia.

IT Solutions Mitech - Technology, IT Solutions & Services WordPress Theme
Buy Now