DDD & 重构—— 写在前面

Posted 倒骑的驴

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了DDD & 重构—— 写在前面相关的知识,希望对你有一定的参考价值。

最近新接了一个业务系统——社区服务系统,为了快速熟悉和梳理老系统的业务逻辑和代码,同时对老系统代码做一些优化,于是打算花上一个月时间不间断地对老系统服务进行重构。同时,考虑到社区业务的复杂性,想起了之前做用户系统时尝试过的领域驱动建模(简称DDD,英文全称为:Domain Driven Design),思量之下,觉得DDD非常时候这种复杂业务逻辑的系统。毫不迟疑,开搞!

之前在做用户系统时,也尝试使用DDD进行业务建模,但迫于项目工期压力,没有进行深入的学习和建模,最后效果不是很理想,为了避免重蹈覆辙,于是决定先储备好DDD相关知识,再边实践边体会,为此重新学习了Eric Evans的《领域驱动干设计-软件核心复杂性应对之道》和Vaughn Vernon的《实现领域驱动设计》,前者重理论,后者重实现,两者配合相得益彰。

由于是对旧系统的重构,因此,还学习了Martin Flower的神作《重构-改善即有代码的设计》。

通过这些书籍的学习和实际编码实践,得到了很多有价值的东西,包括但不限于:加深对DDD的理解,业务建模的重新认识,OOP的重新认识,重构是一门让完美主义者爱不释手的技艺......

感于此,决定将整个过程中的读书笔记、问题、解决方式、思考过程、心得记录下来,以飨读者,共勉之。

后面的一段时间,会不间断地整理相关内容放上来,欢迎大家一起讨论。

以上是关于DDD & 重构—— 写在前面的主要内容,如果未能解决你的问题,请参考以下文章

当技术重构遇上DDD,如何实现业务技术双赢?

AlphaScrum meeting 3

浅谈代码重构与优化

DDD-领域驱动设计重构的痛点及项目结构的划分

腾讯技术工程 |QQ相册后台存储架构重构与跨IDC容灾实践

BetaScrum meeting 1