走向.NET架构设计—第四章—业务层分层架构(后篇)
本篇议题如下:Transaction Scrip(前篇)Active Record前篇)Domain Model(中篇)Anemic Model(后篇)DDD(后篇)
{
public string OrderNo { get; set; }
public OrderStatus Status { get; set; }
public List<OrderItem> Items { get; set; }
}
{
public bool IsSatisfiedBy(Order order)
{
return order.Status != OrderStatus.Processed;
}
}
{
bool result = false;
var order = requestOrder;
ProductService productService = null;
if (order != null)
{
PorcessStatusSpecification specification = new PorcessStatusSpecification();
if (specification.IsSatisfiedBy(order))
{
productService = new ProductService();
var hasInventory = productService.CheckInventory(order);
if (hasInventory)
{
order.Status = OrderStatus.Processed;
//...
}
}
}
return result;
}
将应用划分成分离的层并建立层间的交换规则很重要。如果代码没有被清晰隔离到某层中,它会迅即混乱,因为它变得非常难以管理变更。在某处对代码的一个简单修改会对其他地方的代码造成不可估量的结果。领域层应该关注核心的领域问题。它应该不涉及基础设施类的活动。用户界面既不跟业务逻辑紧密捆绑也不包含通常属于基础设施层的任务。在很多情况下应用层是必要的。它会成为业务逻辑之上的管理者,用来监督和协调应用的整个活动。
0
分享
收藏
99篇文章,106W+人气,13粉丝
走向.NET架构设计—第四章—业务层分层架构(后篇)相关推荐
- 走向.NET架构设计—第四章—业务层分层架构(前篇)
走向.NET架构设计-第四章-业务层分层架构(前篇) 前言:在任何一个项目中业务层毫无疑问是最重要的层,所以在设计的过程中,如何组织业务层是至关重要的.本章的讨论将会涉及Flower的架构模式一书中的 ...
- 走向.NET架构设计—第四章—业务层分层架构(中篇)
走向.NET架构设计-第四章-业务层分层架构(中篇) 前言: 在上一篇文章中,我们讨论了两种组织业务逻辑的模式:Transaction Script和Active Record.在本篇中开始讲述Dom ...
- 走向.NET架构设计—第五章—业务层模式,原则,实践(中篇)
走向.NET架构设计-第五章-业务层模式,原则,实践(中篇) 前言:设计模式并不是什么很高深的东西,至少不是那么"神乎其神".说到底,设计模式就是一些设计思想.下面我们就走进项目, ...
- 走向.NET架构设计—第五章—业务层模式,原则,实践(后篇)
走向.NET架构设计-第五章-业务层模式,原则,实践(后篇) 前言:在上一篇文章中,讲述了一些设计模式的使用,本篇首先接着介绍还没有讲完的一些设计模式,然后再讲述一些架构模式中的超类模式,作为本篇的结 ...
- 走向ASP.NET架构设计-第六章-服务层设计(中篇)
走向ASP.NET架构设计-第六章-服务层设计(中篇) 前言:上一篇文章介绍了一些服务层的基本知识,而且也简要的介绍了SOA的有关知识,本篇主要是介绍在服务层可以采用的一些模式. 本篇议题如下: F ...
- 走向.NET架构设计—第三章—分层设计,初涉架构(后篇)
走向.NET架构设计-第三章-分层设计,初涉架构(后篇) 前言:本篇主要是接着前两篇文章继续讲述! 本篇的议题如下: 4. 数据访问层设计 5. 显示层设计 6. UI层设计 4. 数据访问层设 ...
- 微服务架构设计实践之七:业务架构
微服务架构设计实践之七:业务架构 原文:微服务架构设计实践之七:业务架构 版权声明: https://blog.csdn.net/beyondself_77/article/details/79842 ...
- 超标量处理器设计——第四章_分支预测
超标量处理器设计--第四章_分支预测 参考<超标量处理器>姚永斌著 4.1 简述 分支预测主要与预测两个内容, 一个是分支方向, 还有一个是跳转的目标地址 首先需要识别出取出的指令是否是分 ...
- DDD微服务架构设计第四课 微服务落地实践的技术中台
10 微服务落地的技术实践 如今,做一个优秀的程序员越来越难.激烈的市场竞争.互联网快速的迭代.软件系统规模化发展,无疑都大大增加了软件设计的难度.因此,对于架构师的能力要求也越来越高,就像我的一本书 ...
最新文章
- jieba分词工具的使用方法
- 【直播回放】100分钟全面剖析图像分割任务,学习CV必知
- 从高斯分布的导出讲起——为什么概率密度函数长成这个样子?
- 可执行文件组成及内存映射
- Linux安装和管理程序的相关知识点
- ExtJs-GridPanel简单的增删改
- 复读数组(nowcoder 1103A)
- BugkuCTF-MISC题zip伪加密
- android 动态库 后缀,Android Robolectric加载运行本地So动态库
- Spring Boot提交表单信息
- jq默认选中每项第一个
- Profession
- 蔡义江《红楼梦诗词曲赋评注》下
- 高考数学知识点:向量压轴题秒杀神器-中点转化式
- 过年了,让你的服务器提高警惕!
- 云服务器BCC实例重装系统的操作步骤
- Arm NEON intrinsics指令格式
- 26部文学经典的开场白和结束语
- 基于java的仓储管理系统设计与实现(含源文件)
- html代码设置五边形,javascript怎么画正五边形?
热门文章
- 《SOA与REST:用REST构建企业级SOA解决方案》—第2章2.1节如何使用案例研究
- 阿里云accessKey如何创建?~ 2015.08.25
- IE打印控件推荐-4fang pazu
- [轉]SQL Server 2005备份维护计划
- 初识用.NET Remoting来开发分布式应用 (转载)
- 在虚拟主机中无法实现缩放等交互
- java书籍_这本最适合夯实基础的Java 书籍,80% 的 Java 程序员没认真看过
- Nginx 之五: Nginx服务器的负载均衡、缓存与动静分离功能
- deepin下载软件慢切换镜像
- Request.From,Request.QueryString转对象