Hexagonal con golang

Hace tiempo me plantee y sigo manteándome, montar una aplicación donde publicar todos los desarrollos que pueda llegar hacer. De esta manera, puedo generar nuevos post de desarrollo, y a su vez publicar la funcionalidad para que la probéis. Todos ganamos!

La primera parte, que quería hacer y hacerla en un lenguaje que no estoy muy acostumbrado, es el Gateway/Seguridad, el cual voy ha desarrollarlo en GO.

Aunque esta primera versión, no sigue lo que viene a ser los standard de golang, es un intento e arquitectura hexagonal (port-adapter), la cual mantendré, pero siguiendo este estándar: https://github.com/golang-standards/project-layout en los siguientes commits

Si no os interesa seguir leyendo, podéis entrar en el repo: https://github.com/apascualco/gotway y ver el código vosotros mismos.

Estoy disfrutando cómo un niño, picando código en golang, aunque se que no estoy siguiendo el estándar, estoy aprendiendo muchísimo.

Cómo podéis observar, tenemos 4 packages:

  • Domain
  • Core
  • Persistence
  • Api

Cómo podéis imaginar, core, no tiene dependencias de api, ni de persistente y es el propio cliente “api” que añade la dependencia de persistencia e instancia el Adapter.

Espero seguir por esta linea, aplicando el estándar en la generación de módulos y a la vez añadir un registry patten para registrar las rutas y los permisos. De esta manera cada aplicación registrada.

CategoriesGO

Deja una respuesta

A %d blogueros les gusta esto: