DSL Declarativo

Qué es

  • Lenguaje Específico de Dominio (Domain-Specific Language) propio de Distillsync
  • Permite definir integraciones, mappings y reglas de negocio de forma declarativa
  • Declarativo: se describe qué debe ocurrir, no cómo implementarlo
  • Opera sobre el metamodelo semántico: las reglas se escriben en términos de entidades de negocio, no de campos de base de datos

Qué permite hacer

  • Formalizar reglas de negocio complejas sin código imperativo
  • Definir qué tarifa aplica a cada grupo de cliente
  • Establecer cómo se calcula el stock disponible en cada contexto
  • Describir el ciclo de vida de un pedido y qué ocurre en cada transición de estado
  • Versionar transformaciones de forma independiente al código del producto
  • Describir dependencias entre procesos (si X entonces Y antes de Z)

Por qué elimina el desarrollo imperativo por cliente

  • En el modelo tradicional, cada regla de negocio se implementa como código específico para ese cliente
  • Con el DSL, la regla se declara una vez y Distillsync la ejecuta para todos los clientes que la necesiten
  • El conocimiento interdominio acumulado no vive en el código de cada proyecto — vive en la infraestructura

Lo que no es

  • No es una interfaz visual de arrastrar y soltar
  • No es un lenguaje de programación de propósito general
  • No es un sistema de reglas que el usuario final configura (es una capa de la arquitectura del producto)