这是一次尝试,以动态语言(Python、Ruby、PHP 等)收集世界所知的有关领域驱动设计的所有信息。不仅是 DDD,还有有关分层和干净架构的所有有价值的信息,其中业务逻辑与基础设施和框架代码分离。
那么我们走吧!
Architecture Patterns with Python(又名“Cosmic Python”) - Harry Percival 和 Bob Gregory 撰写的书籍,介绍 DDD 和战略模式(即将在 O'Reilly 上发布,也可在 safari 上早期发布)
Clean Architectures in Python - Leonardo Giordani 根据他的文章编写的书籍
Domain-Driven Rails - Robert Pankowecki 和 Arkency 团队编写的一本关于与 Rails 项目相关的 DDD、CQRS、事件溯源的书
PHP 领域驱动设计 - Carlos Buenosvinos、Christian Soronellas 和 Keyvan Akbary 撰写的有关 DDD 和使用 PHP 实现的书籍
Event Sourced Building Blocks for Domain Driven Design with Python - 这本小书包含 Python 中事件源 DDD 的简洁模式语言。本书重点关注 DDD 的可靠“构建块”。它避免重复 DDD 的“战略”模式。它采用实用的“自下而上”方法来构建可靠、可扩展、可维护的应用程序和系统。前言包括对作为事件描述的模式语言的重新考虑。这是一本小书,目前尚未完成。
实施清洁架构 - 一本重点关注实施清洁架构的实际方面的书。 Python 代码片段充分说明了这一点。除了清洁架构本身之外,它还引入了其他软件工程模式,例如模块化、依赖注入。 CQRS 或事件溯源。
django 中业务逻辑和数据访问的分离 - Python、Django
为什么领域驱动设计似乎只在 C 和 Java 等静态语言中流行?
动态语言中的领域驱动设计工作?
DDD - 领域驱动设计,应该应用哪种开发顺序? - Python
从其他聚合内部检索聚合 - StackOverflow 关于 Python 应用程序中聚合的问题
避免我们服务中的多米诺骨牌效应(宏观设计层面的稳健)
Clean Architecture Python (web) apps - Przemek Lewandowski 关于 Uncle Bob 的 Clean Architecture 在 Python Web 应用程序中的应用,包括代码示例和类型注释
领域驱动设计 com Python - 用葡萄牙语幻灯片,但包含一些有用的 Python 代码
从 Active Record 到 Events - Emanuele DelBono 关于在 ruby on Rails 应用程序中使用 DDD/CQRS/ES
通过 DDD 从框架耦合代码到微服务
Django 中的六边形设计 - Python、Django,包含一些代码。
微服务:通过事件驱动架构提高团队的自主性
适用于 Rails 开发人员的 DDD - Victor Savkin 撰写的关于 Ruby on Rails 中的 DDD 的整个博客
领域驱动设计和 MVC 架构 - Federico Cargnelutti 的两篇文章,第二部分包含 PHP 示例
Java & Python 中的值对象 - 关于Value Object
,Java 和 Python 中值对象的比较
领域驱动设计有条理的 Python - 关于 Python 中 DDD 的一点总结
使用 python 探索领域 - 一篇包含Repository
和Storage
类示例的小文章
Python 中的清洁架构:分步示例 - 在 Python 中实现 Uncle Bob 的清洁架构。包含分步说明和包含所有代码的 github 存储库。
在 https://www.cosmicpython.com/(以前在 made.com 技术博客)上介绍命令处理程序,然后介绍 Python 中的存储库和工作单元模式、CQRS/处理程序和视图以及为什么使用域事件?
Python 中的大型 Web 应用程序:良好的架构 - 文章指出 MVC 不足以满足大型应用程序的需求,您需要单独的业务逻辑层。
DDD + Ruby subreddit - 为对领域驱动设计感兴趣的 Ruby 开发人员提供的 subreddit。
Arkency 博客和时事通讯 - 他们写了很多关于 DDD、事件溯源和 Ruby/Rails 测试的文章。不仅仅是纯文本,还有代码,甚至偶尔还有网络研讨会。
Hanami em Production – 2 anos depois:用葡萄牙语发布,描述了 Creditas 使用 Hanami 框架在 Ruby 中通过 DDD 构建和维护其核心应用程序(60k 行代码 + 200 万请求/月)的经验。
如何改进领域驱动设计中的命名上下文 - 描述如何为有界上下文找到更好的名称的技术。
Implementing Domain-Driven Design in PHP - 介绍领域驱动设计以及如何使用 PHP 在 Laravel 中实现,作者:Alireza Rahmani Khalili。
Event Sorcery - 详细的博客,包含有关使用 Python 构建事件源域驱动应用程序的长篇文章。
如何在 Python Web 应用程序中开始 DDD 和洋葱架构 - Takahiro Ikeuchi 的博客文章的标题非常不言自明。包括带有想法实现的 github 存储库。
使用 Python 的六角架构实践示例(包括 FastAPI 示例) - 有关六角架构的文章,解释基础知识并显示代码示例。
Domain-Driven Design with Python - 关于 DDD 和 Python 的精彩演讲,由 Skills Matter 的 Robert Smallshire 解释了许多 DDD 主题和代码示例
Python 中的领域驱动设计模式 - EuroPython 2018 的 Robert Smallshire 关于 Python 中 DDD 模式的详细讨论
The Clean Architecture in Python - Brandon Rhodes 关于 PyOhio2014 的精彩演讲
@proofit404 的俄语 Django Talk 中的六边形架构,包含代码示例和项目布局
Rails 领域驱动设计和六边形架构 - Eric Roberts 和 Declan Whelan 在 RailsConf 2014 上的 Ruby on Rails 演讲以及代码示例
六角形导轨 - Ruby on Rails,GoRuCo 2012,作者:Matt Wynne
DDD 中的六边形架构 - PHP 中的 DDD 高尔夫,来自 PHP UK 会议的 Gordon Skinner
Python 边界 - 谈论Boundaries
作者:Gary Bernhardt,Pycon US 2013
Boundaries Ruby - Gary Bernhardt 的相同演讲,但来自 Ruby Conf 12 的 Ruby。包含 QA 部分。
Hexagonal TDD - Rails 应用程序六边形架构的 TDD 实现。分为 3 部分。
Jim Weirich 谈与 Rails 的解耦 - 来自 10 月 CincyRb 的 Jim Weirich 的展示。
从 Active Record 到 Events - 来自 Wroclove.rb 的 Emanuele DelBono 关于 Ruby 和 Ruby on Rails 中的 DDD/CQRS/ES 的演讲。
经久耐用:领域驱动的美丽系统方法 - Andrew Ha 的 RailsConf 2017 演讲。将遗留代码库重构为 DDD 风格、设计概述和代码示例的技术。
技术上的 DDD - Pim Elshoff 的精彩演讲,介绍如何在 PHP 中使用值对象、实体和服务来开始使用 DDD
也许:将领域驱动设计和反应式架构应用于函数式编程 - Rob Martin 在 ElixirConf 2017 上的演讲。
清洁架构 - Sebastian Buczyński 的 PyGotham 2018 演讲,包含代码和幻灯片。还有一篇英文博客文章
领域驱动设计 - CODEiD 2018 演讲,作者:Артём Антоненко @Antonyan。用俄语。他的 github 帐户下还有一个 repo - PHP DDD Skeleton 以及其他 DDD 相关项目。
Eventsource 101 - Bob Gregory 谈论使用 Python 进行实时编码的事件溯源。他从头开始编写了一个事件源电子商务篮子。
Python 领域驱动设计 - 第 219 集 - 当您的软件项目开始扩展时,理解和维护所有部分就变成了更大的挑战。在本集中,Henry Percival 分享了他在大型 Python 项目中使用领域驱动设计的经验。
Как мы уменьшили сложность наших проектов - Борис Цема(俄语)在 PyCon RU 2019 上的演讲,内容涉及使用 DDD 模式来减少 Wargaming.net 项目。
Python 中的简洁架构 - PyLondinium19 演讲,作者:Leonardo Giordani
Python 中的事件溯源 - 成熟、稳定、流行的用于事件溯源和 DDD 的 Python 库。
PyAssimilator - Python 中的一组 DDD 模式,具有各种外部库支持。
dry-python - 一组用于可插入业务逻辑组件的 Python 库。
Ruby DDD Sample App - 在 Ruby 中用 Java 编写的 DDD 示例应用程序的端口.绝对值得一读。
DDD in Django - 在 Django 中实现 DDD 和六边形架构的尝试
Flask 中的 DDD - 使用 Flask 的 DDD 架构的简洁示例
Falcon 中的 DDD - Falcon 中 DDD 和六边形架构的简单实现,包含一些电池.
Kanban in Python - 使用 DDD 方法的简单看板的 Python 实现.
Clojure 中的看板 - Clojure 中相同
Python 练习中的看板 - 同一委员会为 Sixty-North 某些研讨会的学生提供练习。
Rewind - Rewind 是一个用 Python 编写的 (CQRS) 事件存储服务器。并不是说它是用 DDD 方法编写的,但仍然相关。
Clean Architecture 示例应用程序 (python) - 具有用 Python 编写的示例模块化应用程序的存储库。该代码用于《实现清洁架构》一书中。
The Clean Architecture with Python - Reddit 上关于该主题和要点的讨论,以及建议的架构和一些评论。
abidria-api - 使用干净的架构编写的 Django 应用程序。还有一篇由 Jordi Fierro 撰写的文章,其中解释了架构组件以及它们如何相互交互。
Hanami - Hanami 是 Rails 世界中的一个不错的选择,它是一个新兴框架,鼓励并帮助在 Ruby 中设计 DDD 应用程序。入门指南引用了一些 DDD 概念以及它们如何融入框架。
使用 Symfony 4 在 PHP 中应用六边形架构 + DDD + CQRS
Revents - 在 Ruby 和 Ruby on Rails 中 DDD/CQRS/ES 的可能实现
DDD Rails Sample - 项目旨在用作那些想要在 Rails 中构建领域驱动设计应用程序的人的起点。
领域驱动设计类和接口 - 该项目是受领域驱动设计启发的类和接口的 PHP 示例集合。
DDD CQRS ES 银行应用程序 - 遵循 DDD 规则、使用简洁架构、事件源和 CQRS 的银行应用程序。
六角架构示例应用程序(Python,带有 FastAPI) - 使用六角架构原理,在 FastAPI Web 框架之上用 Python 编写的示例应用程序。
Python 中的 DDD 模式 - Sixty North 提供为期两天的课堂培训,介绍如何在 Python 中通过关系或事件源持久性实现 DDD。
Rails + 领域驱动设计研讨会 - Arkency 举办的研讨会。该页面应该有未来研讨会的时间表以及对研讨会的期望的摘要。
EventStorming 基础课程(也是西班牙语)- 学习 EventStorming 基础知识,以 DDD 思维方式设计软件,然后使用任何动态编程语言实现它。