面向编码规范和架构演进的领域驱动设计开发框架

来源 :南京大学 | 被引量 : 0次 | 上传用户:qqboygogogogo
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
领域驱动设计是一种针对复杂软件系统的建模与分析方法,它从战略设计和战术设计两个层面提供了诸多用于软件系统的建模与分析工具。近年来,随着中台和微服务架构的迅速发展,领域驱动设计向上通过战略设计指导中台业务模型的构建,向下通过战略和战术设计指导微服务的设计和实现,在软件开发中扮演着越来越重要的角色。然而,领域驱动设计实践存在许多挑战。一方面,领域驱动设计是一种方法论,并没有对具体代码设计做出规范与指导,这使得不同开发者基于相同的领域驱动设计建模结果开发出来的系统差异很大,从而导致开发者沟通成本骤增,现实架构逐渐偏离于理想架构。另一方面,领域模型是领域驱动设计的核心,然而它在系统架构演进时具有很高的维护成本。系统架构往往是不断演进的,系统架构演进时为了与领域模型保持统一就需要对代码做出相应调整。为了应对领域驱动设计实践遇到的挑战,本文设计并实现了一套面向编码规范和架构演进的领域驱动设计开发框架Tiad,用于辅助开发者进行领域驱动设计实践。具体来说,为解决挑战一,Tiad提供了领域驱动设计代码约束检查功能,能支持在代码中定义标准的领域驱动设计构建块,并提供相应的代码约束检查规则,从而在领域驱动设计实践时对代码做出规范与指导。为解决挑战二,Tiad提供了透明化本地和分布式领域事件及事务功能,通过支持事件驱动编程降低代码耦合,通过透明化技术实现解耦业务实现和技术选型,从而避免架构演进时对领域模型间通信方式、事务控制方式的调整,降低领域模型在架构演进时的维护成本。Tiad还提供了配套集成开发环境插件,能在编码时实时生成、检查和修复代码,有较高易用性;Tiad各模块相对独立并使用可插拔化的设计,有较高扩展性;Tiad基于高性能中间件并进行了性能测试,有较高性能。Tiad在通过上述功能解决领域驱动设计挑战的同时,还兼具较高易用性、扩展性和性能,能够有效辅助开发者进行领域驱动设计实践。
其他文献
入秋后,气候逐渐干燥,人的皮肤黏膜水分蒸发加速,于是出现皮肤干涩、鼻燥、唇干、咽痛、头痛、手足心热等现象,这就是人们所说的秋燥症。这个时节,我们尤其要重视肺的保养。
期刊
对秃杉雪松混交林、秃杉纯林及雪松纯林的生长及土壤肥力进行相关研究,结果表明:秃杉雪松混交林的生长力要高于秃杉、雪松纯林;在对土壤理化性质影响方面,秃杉雪松混交林能够
我在职高教英语多年,对于职高学生有比较深入的了解:他们的英语基础大都比较差,有的同学甚至连最起码的日常用语都不知道几句.更不用说阅读英语文章。虽然他们大多数人都是为了学
炎炎夏日,由于气温的升高,人们对于夏季饮食有了更高的要求。那么,要怎么做才能吃得好,吃得健康呢?
目的:观察三柱理论指导应用锁定加压接骨板(LCP)内固定治疗桡骨远端C3型骨折的疗效。方法:35例C3型桡骨远端骨折采取掌侧/背侧入路切开复位LCP内固定进行治疗。结果:随访6-18个月,
春节前夕,北京青少年科技俱乐部的科技导师们,每人手中均握有一份科技俱乐部的"工作模式",那里面凝聚着王绶琯院士的研究与思考.他们聚集在一起考核并评估俱乐部成员的"科研
在传统的课堂教学形式中.学生的兴趣未能得到调动,学生在课堂活动中欠缺成功感。而导致厌学消极情感。因而课堂活动的设计应着重使学习化被动为主动,变乏味为有趣。
在实验研究的基础上,提出了在中学物理教学中开展开展教育的主要内容与途径。
课程改革的核心环节是课程实施.课程实施的基本途径是教学。所以教学改革是课程改革的关键所在。在教学理论和教学实践之间。教学模式处于中介地位。因此,努力探索新课程实施中
摘要:终身体育意识的培养是高中体育教学中非常重要的教学内容。教师应当重视对学生加强思想引导,使学生能够在教学中表现出更大的积极性,使学生能够通过体育知识的学习逐渐意识到终身体育意识的重要性,从而更好地开展体育锻炼。本文對高中体育教学中,如何有效培养学生的终身体育意识进行简要分析。  关键词:高中体育教学;培养学生;终身体育;意识  高中体育学科在教学中应当重视体育思想的教育。需要在教学中关注学生体