领域驱动设计:业务建模与架构实践
王红亮
Preface 前言
为什么要写这本书
本书创作的初心有两个。
第一,服务于广大开发人员的职业进阶和转型。
本书讲授的是领域驱动设计(Domain-Driven Design, DDD)的相关知识。DDD是一种业务建模和架构设计方法,而业务建模和架构设计是开发人员职业进阶和转型的必备技能。
在当今AI技术大流行的背景下,快速掌握这两项技能对开发人员来说很重要,因为写程式化“胶水代码”的工作很快就会被AI所取代。AI加速了开发这个岗位的进化和发展,这并不是件坏事。试想一下未来开发团队的工作场景:建模师们和行业的领域专家共同完成模型的搭建,AI就帮助我们生成了相应的代码,包括测试和必要的界面,之后只要把这些代码和工作成果稍加优化,整个开发就结束了。功能实现以后,架构师登场,根据业务需要设定除功能之外的其他质量属性的要求,如安全、性能、可用性、可维护性和兼容性,并在AI的辅助下给出各个质量属性的解决方案,配合云原生或PaaS平台的部署环境,系统很快搭建完毕,上线运行。
在这个场景中,你所要做的就是把职业技能树上的建模或架构这两部分点亮。所以,如果未来本书注定会出现在你的办公桌上,不如现在就把它买回家——可以先人一步,及早开始。
有人会说,凭什么未来和你描述一样呢?是不是有蹭AI热度之嫌?好吧,撇开AI不谈(其实它并不是一个体现本书价值的关键因素),想象一下五年后的自己,任何技术人员的职业发展都是从低级到高级、技术到业务、具体到抽象的过程。即便没有AI,我们是要立志成为精通多个领域知识的建模师、架构师,还是一个只会写代码,知晓许多类库用法的技术人员?答案在你心中。更何况,上面描述的工作场景已经不是未来时态了,在很多团队中已经真真切切地开始发生。
几年之内,开发人员都会逐步转到新的工作中,开发岗位的工作内容会发生巨大变化。如前所言,这绝不是坏事,它让我们的职业迈上了新的台阶,而我们…