Realmente me encanta la idea del diseño impulsado por dominio, sin embargo, mientras estoy aprendiendo Go, me pregunto si existe el equivalente de DDD que apunta a un lenguaje efectivamente más funcional.
Realmente me encanta la idea del diseño impulsado por dominio, sin embargo, mientras estoy aprendiendo Go, me pregunto si existe el equivalente de DDD que apunta a un lenguaje efectivamente más funcional.
No hay equivalente DDD necesitaba un paradigma para soportar la reescritura frecuente en un escenario evolutivo de desarrollo de software. OOP parecía la única estrategia viable en aquel entonces. Pero los lenguajes funcionales también pueden servir para tal escenario.
Es posible que desee ver el video de Greg Young sobre DDD y programación funcional y el video de Patrik Fredriksson sobre la implementación de DDD con un lenguaje funcional como Clojure
Creo que DDD no se trata del diseño de OOP en sí, sino más bien de cómo enfocas todo el proceso de desarrollo. El desarrollo iterativo, el lenguaje omnipresente, la estrecha cooperación de expertos en negocios y desarrolladores son agnósticos al lenguaje y al paradigma.
El diseño de objetos en DDD no es algo nuevo. Los patrones que se describen en DDD existieron mucho antes de que DDD viera la luz del mundo. Las raíces acumuladas, el patrón de estrategia y los objetos de valor solo eran una buena opción para describir la lógica empresarial. Por lo tanto, su pregunta debería ser más como "Cómo expresar la lógica empresarial y persiste su estado en lenguaje funcional". Probablemente esté buscando patrones de diseño para lenguajes de programación funcionales.