No acoplar a los Framework ni a las Librerias

Esta entrada es en base a mi experiencia personal y ademas de varios podcast que he escuchado con este problema de acoplamiento a los frameworks y/o librerias.


Antes de comenzar 

Independiente del lenguaje y librería, la verdad es que es muy común acoplarse a las librerías,  usar sus forma de hacer las cosas y así facilitarnos un montón de trabajo  (en teoría), pero esto con lleva  a su vez varios problemas como principalmente si la librería cambia la forma de hacer las cosas y tiene un cambio en una versión mayor implicará hacer cambios en toda nuestra aplicación.

Caso de uso 

Tengo un montón de ejemplos, pero encontré dos que son los mas sencillos que se puedan imaginar. 

1) Supongamos que tenemos una librería para logear técnicamente, supongamos que estamos usando log4net y necesitamos cambiar a Nlog o Serilog. 

2) Supongamos que esta vez tenemos para serializar y deserializar a JSON usamos la librería de NewtonSoft  y tenemos que comenzar a usar la de Microsoft. 

3) Por ultimo, supongamos que cualquier librería usada, como las mencionadas anteriormente y salio una nueva versión que es incompatible con la versión que estamos usando, esto es mas común de lo que se piensa.

 

Posibles soluciones. 

Últimamente yo me acostumbre a crear niveles de abstracciones para estos tipos de librerías, donde creo una clase que me permita ser incluida en todos los proyectos y que esta sea la encargada de tener la dependencia con mi librería externa. 

 

A continuación un simple ejemplo de la abstracción, es mas bien a nivel de pseudo código donde permitirá cambiar la librería externa a todos los proyectos .net de una solución con muy poco esfuerzo, probándolo obviamente.  



 

 



 

 

 

 

 

 

 

 

 

 

--
Atte.
Victor Hugo Saavedra

Comentarios

Entradas populares de este blog

Buscar columnas en todas las tablas SQL SERVER

"is not null" o "<> Null" en Sql Server

Aplicación y Aplicativo