Functional DDD em C# Parte 3: Railway Oriented Programming, Monads e Garantia de Estado'

Functional DDD em C# Parte 3: Railway Oriented Programming, Monads e Garantia de Estado

Esta é a terceira parte da série sobre programação funcional em C#. Se a Parte 2 foi sobre compor o domínio, aqui é sobre compor o domínio com falhas sem mentir no contrato. Caso tenha perdido: Records não são apenas DTOs (e você está perdendo a melhor parte) Functional DDD em C# Parte 2: Entidades, Comportamento e Composição Duas perguntas surgiram com frequência nos posts anteriores: ‘Por que sempre um factory method?’ e ‘O que é esse Result<>?’. Hoje vamos responder ambas. Identificar o problema que elas resolvem e entender a aplicação correta. ...

December 26, 2025 · 12 min · João Bateloche
Functional DDD em C# Parte 2: Entidades, Comportamento e Composição

Functional DDD em C# Parte 2: Entidades, Comportamento e Composição

Domínio como composição Ao modelar o domínio funcionalmente, pensamos fundamentalmente em composições — tanto de tipos quanto de funções. As ideias táticas do DDD, como Raízes de Agregação e Bounded Contexts, não só se aplicam aqui, como ganham uma expressividade nova, livre do peso do gerenciamento de estado da Orientação a Objetos clássica. Para termos uma base de comparação, veja como modelaríamos uma entidade Cart simplificada em C# tradicional (OO): ...

December 18, 2025 · 7 min · João Bateloche