Esta é uma tentativa de coletar todas as informações sobre Domain Driven Design que o mundo conhece em linguagens dinâmicas (Python, Ruby, PHP etc). Não apenas DDD, mas todas as informações valiosas sobre arquitetura limpa e em camadas, com separação da lógica de negócios da infraestrutura e do código da estrutura.
Então vamos lá!
Architecture Patterns with Python (também conhecido como "Cosmic Python") - Livro de Harry Percival e Bob Gregory apresentando DDD e padrões estratégicos (a ser lançado na O'Reilly, também disponível em versão antecipada no safari
Arquiteturas Limpas em Python - Livro de Leonardo Giordani baseado em seu post
Domain-Driven Rails - um livro de Robert Pankowecki & Arkency Team sobre DDD, CQRS, Event Sourcing relacionado a projetos Rails
Domain-Driven Design em PHP - Livro de Carlos Buenosvinos, Christian Soronellas e Keyvan Akbary sobre DDD e implementação com PHP
Blocos de construção originados em eventos para design orientado a domínio com Python - Este pequeno livro contém uma linguagem de padrão concisa para DDD originado em eventos em Python. Este livro se concentra em “blocos de construção” confiáveis para DDD. Evita repetir os padrões “estratégicos” do DDD. É necessária uma abordagem prática "de baixo para cima" para criar aplicativos e sistemas confiáveis, escaláveis e de fácil manutenção. O prefácio inclui uma consideração renovada da linguagem de padrões como descrição de eventos. Este é um livro pequeno e ainda não está terminado.
Implementando a Arquitetura Limpa - um livro com foco nos aspectos práticos da implementação da Arquitetura Limpa. É fortemente ilustrado por trechos de código em Python. Além da própria Arquitetura Limpa, ela também introduz outros padrões de engenharia de software, como modularidade, Injeção de Dependência. CQRS ou Fonte de Eventos.
Separação de lógica de negócios e acesso a dados em Django - Python, Django
Por que o design orientado a domínio parece popular apenas em linguagens estáticas como C e Java?
Esforços de Domain Driven Design em linguagens dinâmicas?
DDD - Domain Driven Design, qual ordem de desenvolvimento deve ser aplicada? -Píton
Recuperando agregados de dentro de outros agregados - pergunta StackOverflow sobre agregados no aplicativo Python
Evitar o efeito dominó nos nossos serviços (SOLID ao nível do macrodesign)
Aplicativos Python (web) de arquitetura limpa - Przemek Lewandowski sobre a aplicação da arquitetura limpa do tio Bob para aplicativos web Python com exemplos de código e anotações de tipo
Domain Driven Design com Python - slides em português, mas contém alguns códigos úteis em Python
Do Active Record aos Eventos - Emanuele DelBono sobre o uso de DDD/CQRS/ES em aplicações Ruby on Rails
Do código acoplado à estrutura aos microsserviços por meio de DDD
Design hexagonal em Django - Python, Django, contém algum código.
Microsserviços: Melhorando a autonomia de nossas equipes com Arquitetura Orientada a Eventos
Desenvolvedores DDD for Rails - blog inteiro de Victor Savkin sobre DDD em Ruby on Rails
Domain-Driven Design e MVC Architectures - dois artigos de Federico Cargnelutti com exemplos de PHP na segunda parte
Objetos de valor em Java e Python - sobre Value Object
, comparação de objetos de valor em Java e Python
Python metódico de Design Orientado a Domínio - Um pequeno resumo sobre DDD em Python
Explorando domínios com python – Um pequeno artigo com exemplo de classes de Repository
e Storage
Arquiteturas limpas em Python: um exemplo passo a passo - Implementação da arquitetura limpa do tio Bob em Python. Contém explicação passo a passo e repositório github com todo o código.
Apresentando Command Handler em https://www.cosmicpython.com/ (anteriormente no blog de tecnologia made.com), seguido por Repository and Unit of Work Pattern em Python, CQRS/Handlers and Views e Why use Domain Events?
Grandes aplicativos da web em Python: uma boa arquitetura - artigo que afirma que MVC não é suficiente para aplicativos grandes e você precisa de uma camada separada para lógica de negócios.
Subreddit DDD + Ruby - Um subreddit para desenvolvedores Ruby interessados em Design Orientado a Domínio.
Blog e newsletter da Arkency - Eles escrevem muito sobre DDD, Event Sourcing e testes em Ruby/Rails. Não apenas texto simples, mas código e até webinars ocasionalmente.
Hanami em Produção – 2 anos depois: post em português descrevendo a experiência da Creditas na construção e manutenção de seu core app (60k linhas de código + 2m request/mês) com DDD em Ruby usando framework Hanami.
Como melhorar os contextos de nomenclatura no design orientado a domínio – descreve a técnica de como encontrar um nome melhor para seus contextos limitados.
Implementando Domain Driven Design em PHP - Apresente Domain Driven Design e como implementar em Laravel com PHP por Alireza Rahmani Khalili.
Event Sorcery - Blog detalhado com longos artigos sobre a construção de aplicativos orientados a domínio com origem em eventos com Python.
Como começar DDD & Onion-Architecture em aplicativo web Python - Título bastante autoexplicativo da postagem do blog de Takahiro Ikeuchi. Incluindo repositório github com a implementação da ideia.
Exemplo prático de arquitetura hexagonal com uso de Python (exemplo FastAPI incluído) - Artigo sobre arquitetura hexagonal, explicando o básico e mostrando os exemplos de código.
Domain-Driven Design with Python - Ótima palestra sobre DDD e Python com explicações de muitos tópicos de DDD e exemplos de código por Robert Smallshire da Skills Matter
Domain-Driven Design Patterns in Python - Palestra detalhada sobre padrões DDD em Python por Robert Smallshire da EuroPython 2018
A arquitetura limpa em Python - palestra incrível sobre PyOhio2014 de Brandon Rhodes
Arquitetura hexagonal no Django Talk em russo por @proofit404, contém exemplos de código e layout do projeto
Domain Driven Design e Arquitetura Hexagonal com Rails - Ruby on Rails talk da RailsConf 2014 por Eric Roberts e Declan Whelan com exemplos de código
Trilhos Hexagonais - Ruby on Rails, GoRuCo 2012 por Matt Wynne
Arquitetura Hexagonal em DDD - Golfe com DDD em PHP por Gordon Skinner da PHP UK Conference
Boundaries Python - Fale sobre Boundaries
por Gary Bernhardt da Pycon US 2013
Limites Ruby - Mesma palestra de Gary Bernhardt, mas em Ruby do Ruby Conf 12. Contém seção de controle de qualidade.
Hexagonal TDD - Implementação TDD de arquitetura hexagonal de aplicação de trilhos. Em 3 partes.
Jim Weirich sobre dissociação do Rails - Showcase de Jim Weirich de outubro CincyRb.
Do Active Record aos Eventos - Uma palestra de Emanuele DelBono do Wroclove.rb sobre DDD/CQRS/ES em Ruby e Ruby on Rails.
Construído para durar: Uma abordagem orientada por domínio para belos sistemas - RailsConf 2017 palestra por Andrew Hao. Técnicas para refatorar a base de código legada para o estilo DDD, visão geral do design e exemplos de código.
Tecnicamente DDD - Palestra fantástica de Pim Elshoff sobre como começar a usar DDD usando objetos de valor, entidades e serviços em PHP
Talvez: Aplicando Design Orientado a Domínio e Arquiteturas Reativas à Programação Funcional - uma palestra de Rob Martin da ElixirConf 2017.
Arquitetura Limpa - Palestra PyGotham 2018 de Sebastian Buczyński com código e slides. Há também uma postagem no blog em inglês
Domain Driven Design - CODEiD 2018 palestra de Артём Антоненко @Antonyan. Em russo. Há também um repositório - PHP DDD Skeleton e outros projetos relacionados ao DDD em sua conta no github.
Eventsourcing 101 - a palestra sobre sourcing de eventos com codificação ao vivo em Python por Bob Gregory. Ele codifica uma cesta de comércio eletrônico originada de um evento do zero.
Domain Driven Design For Python - Episódio 219 - Quando seus projetos de software começam a escalar, torna-se um desafio maior compreender e manter todas as peças. Neste episódio, Henry Percival compartilha suas experiências trabalhando com design orientado a domínio em grandes projetos Python.
Как мы уменьшили сложность наших проектов - PyCon RU 2019 palestra de Борис Цема (em russo) sobre o uso de padrões DDD para reduzir projetos Wargaming.net.
Arquiteturas limpas em Python - palestra PyLondinium19 de Leonardo Giordani
Event Sourcing em Python - Biblioteca Python madura, estável e popular para fonte de eventos e DDD.
PyAssimilator - Um conjunto de padrões DDD em Python com suporte a várias bibliotecas externas.
dry-python – Um conjunto de bibliotecas Python para componentes de lógica de negócios conectáveis.
Aplicativo de exemplo Ruby DDD - Porta do aplicativo de exemplo DDD escrito em Java em Ruby. Definitivamente vale a pena ler.
DDD no Django - Uma tentativa de implementar DDD e arquitetura hexagonal no Django
DDD in Flask – Um exemplo conciso de arquitetura inspirada em DDD usando Flask
DDD no Falcon - Uma implementação simples de DDD e arquitetura hexagonal no Falcon com algumas baterias incluídas.
Kanban em Python - Implementação em Python de um quadro kanban simples com abordagem DDD.
Kanban em Clojure - O mesmo em Clojure
Exercícios Kanban em Python - Mesmo quadro dividido em exercícios para alunos de algum workshop da Sixty-North.
Rewind - Rewind é um servidor de armazenamento de eventos (CQRS) escrito em Python. Não que tenha sido escrito com abordagem DDD, mas ainda relacionado.
O aplicativo de exemplo Clean Architecture (python) - Repositório com exemplo de aplicativo modular escrito em Python. O código é usado no livro Implementando o Clean Architeure.
A Arquitetura Limpa com Python - discussão no Reddit sobre o tópico e esta essência com a arquitetura proposta e alguns comentários sobre ela.
abidria-api - Aplicativo Django escrito com arquitetura limpa. Há também um artigo de Jordi Fierro que explica os componentes da arquitetura e como eles interagem entre si.
Hanami – Uma boa opção fora do mundo Rails, Hanami é um framework emergente que incentiva e ajuda a projetar aplicações DDD em Ruby. O guia de primeiros passos faz referência a alguns conceitos de DDD e como eles se enquadram na estrutura.
Arquitetura Hexagonal + DDD + CQRS aplicada em PHP usando Symfony 4
Revents - Uma possível implementação de um DDD/CQRS/ES em Ruby e Ruby on Rails
Amostra DDD Rails - projeto destinado a ser usado como ponto de partida para aqueles que desejam construir aplicações Domain Driven Design em Rails.
Classes e interfaces de design orientado a domínio - O projeto é uma coleção de amostras de PHP de classes e interfaces inspiradas em design orientado a domínio.
Aplicativo DDD CQRS ES Banking - Aplicativo bancário seguindo regras DDD, utilizando Clean Architecture, Event Sourcing e CQRS.
O aplicativo de exemplo de arquitetura hexagonal (python, com FastAPI) - exemplo de aplicativo escrito em Python sobre a estrutura web FastAPI, usando princípios de arquitetura hexagonal.
Padrões DDD em Python - Sixty North oferece treinamento em sala de aula de dois dias sobre implementação de DDD em Python com persistência relacional ou de origem de evento.
Workshop Rails + Domain Driven Design - workshops da Arkency. A página deverá conter uma programação para futuros workshops e um resumo do que esperar deles.
Curso Fundamentos do EventStorming (também em espanhol) - aprenda os fundamentos do EventStorming para projetar software com mentalidade DDD para posteriormente implementá-lo com qualquer linguagem de programação dinâmica.