Hermes es un nuevo framework, creado desde cero por nuestro equipo aplicando toda la experiencia acumulada en la arquitectura de sistemas software y en las buenas prácticas y los principios SOLID que rigen todos nuestros desarrollos.
Hermes se ha creado pensando expresamente en facilitar el desarrollo de sistemas complejos y escalables (tanto vertical como horizontalmente) en entornos web o cloud. Por ello, hemos abrazado la filosofía del desarrollo orientado a componentes.
Este paradigma de programación acentúa la separación de funciones del sistema en piezas de software llamadas componentes. Este paradigma es un nivel de abstracción por encima de la programación orientada a objetos.
En Hermes, toda la funcionalidad del sistema está implementada en componentes separados de forma que todos los procesos y flujos de datos dentro de cada componente están semánticamente relacionados.
En cuanto a la coordinación global del sistema, los componentes individuales se comunican con el resto por medio de un conjunto de interfaces. Estas interfaces, siguiendo el mismo principio de modularidad del sistema, están separadas agrupando funcionalidades semánticamente similares.
Cada componente implementa las interfaces que necesite y así ofrece sus servicios al resto. De este modo cada componente adopta el rol de prestador de servicios o de cliente de estos, ninguno de ellos necesita conocer los detalles de implementación del resto.
En este contexto, la misión de Hermes es la de proveer de la funcionalidad y la estructura necesaria para que los componentes puedan centrarse en aportar valor de negocio y olvidarse de la gestión de las infraestructuras básicas como el acceso a datos, gestión de la red, peticiones http, gestión de API, etc.
Gracias Hermes conseguimos un sistema altamente modular y cohesivo. Un sistema fácilmente escalable y con unos tiempos de arquitectura e implementación realmente bajos.