实例介绍
【实例简介】
Acerola项目提供了一个六边形架构服务模板,旨在帮助开发者构建可演进、适应和维护的应用程序。它基于Alistair Cockburn的博客文章原则,并在领域层构建了基于领域驱动设计(DDD)的模型。通过其指南和模式,您可以轻松开始您的新微服务项目。
六边形架构允许应用程序被用户、程序、自动化测试或批处理脚本等同等驱动,并能够与其最终的运行时设备和数据库隔离开发和测试。当来自外部世界的事件到达一个端口时,一个技术特定的适配器将其转换为可用的过程调用并传递给应用程序。应用程序对输入设备的性质一无所知。当应用程序需要发送出去时,它通过一个端口发送给适配器,适配器创建接收技术(人类或自动化)所需的适当信号。
六边形架构中的重要概念包括:
【实例截图】
【核心代码】
Acerola项目提供了一个六边形架构服务模板,旨在帮助开发者构建可演进、适应和维护的应用程序。它基于Alistair Cockburn的博客文章原则,并在领域层构建了基于领域驱动设计(DDD)的模型。通过其指南和模式,您可以轻松开始您的新微服务项目。
六边形架构允许应用程序被用户、程序、自动化测试或批处理脚本等同等驱动,并能够与其最终的运行时设备和数据库隔离开发和测试。当来自外部世界的事件到达一个端口时,一个技术特定的适配器将其转换为可用的过程调用并传递给应用程序。应用程序对输入设备的性质一无所知。当应用程序需要发送出去时,它通过一个端口发送给适配器,适配器创建接收技术(人类或自动化)所需的适当信号。
六边形架构中的重要概念包括:
DDD: 使用Eric Evans的术语如实体、值对象、聚合根和有界上下文设计的账户余额用例是领域和应用层的无处不在的语言。
TDD: 从项目开始,我们开发了单元测试,帮助我们强制执行业务规则并创建一个防止而非发现错误的应用程序。
SOLID: SOLID原则贯穿整个解决方案,虽然不是先决条件,但高度推荐掌握。
EBI: EBI架构的目标是产生一个对技术、框架或数据库技术中立的软件实现。
Microservice: 我们围绕业务领域设计了软件,实现持续交付和独立部署。
Logging: 日志记录是一个细节。我们配置了Serilog,将每条日志信息重定向到文件系统。
Docker: Docker是一个细节,它帮助我们实现更快、更可靠的部署。
MongoDB: MongoDB是一个细节。您可以创建新的数据访问实现并使用Autofac进行设置。
.NET Core 2.0: .NET Core是一个细节。这个代码库中的几乎所有内容都可以移植到其他版本。
CQRS: 命令查询责任分离(CQRS)模式允许我们将概念业务模型分成两个表示。主要表示位于命令堆栈,用于执行创建、更新和删除。显示模型位于查询堆栈内,我们可以构建一个查询模型,使得聚合信息以显示给客户和UI变得更加容易。
【实例截图】

【核心代码】
标签:
好例子网口号:伸出你的我的手 — 分享!
小贴士
感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。
- 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
- 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
- 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
- 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。
关于好例子网
本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明
网友评论
我要评论