Practicando estrategias de desarrollo.

Idea principal.

Como mejor se transforma la información en conocimiento es poniéndola en práctiva y no siempre los proyectos laborales dan la oportunidad de realizar este proceso, así que sólo queda armarse de paciencia y arrancar pequeños momentos de tu poco tiempo libre para esta tarea.

En esta ocasion se trata de un desarrollo destinado a darle vida a algunos conceptos de DDD, arquitectura hexagonal y composer.

El proyecto se divide en cuatro pequeños respositorios, uno destinado a tener las clases de contexto que en resumen definen el negocio (auto-biblio-context), el otro tiene una interfaz basada en consola (auto-biblio-cli) que tiene implementada el acceso al sistema de persistencia a través de PDO y por último un servidor REST (auto-biblio-slim) implementado con slim y otro (auto-biblio-lumen) basado en lumen.

Conclusiones

El enfoque del DDD hace su fuerte en el análisis y en limitar la complejidad del producto final. en este miniproyecto no se ha explitado por ser muy pequeño pero muchas ideas de DDD se pueden aplicar a pequeños proyectos como las entidades, agregados, repositorios etc. La arquitectura hexagonal y el TDD son grandes amigos, aplicar arquitectura hexagonal hace que de manera natural la entradas y salidas de cada implementación de los requerimientos  puedan ser testeados de manera más sencilla ya que se pueden separar con facilidad las interfaces del software de las interfaces de usuario. Y composer por otro lado junto a DDD y arquitectura hesagonal ayudan a la reutilización del software.

Quizás la parte más liosa y complicada son los cambios de software entre repositorios. Si implementando algo en un repositorio te das cuenta de un error en otro por no haber cubierto con pruebas completamente todos los casos hay que cambiar de proyecto corregirlo volverlo a plublicarlo en el respositorio y volver a recuperarlo en el repositorio donde se detectó el error.

 Sólo queda realizar una advertencia, este es un proyecto vivo y didáctico por lo que con total seguridad contiene errores y no importa.

Enlaces

auto-biblio-context  

https://texcanarias@bitbucket.org/texcanarias/auto-biblio-context.git

  

auto-biblio-cli

git clone https://texcanarias@bitbucket.org/texcanarias/auto-biblio-cli.git 

 

auto-biblio-slim 

git clone https://texcanarias@bitbucket.org/texcanarias/auto-biblio-slim.git 

 

auto-biblio-lumen

git clone https://texcanarias@bitbucket.org/texcanarias/auto-biblio-lumen.git 


Comentarios