三层架构之业务逻辑层

三层架构之业务逻辑层_第1张图片

你好,是我琉忆。

今天我们讲一讲三层架构中的业务逻辑层

1、业务逻辑层的介绍

业务逻辑层(Business Logic Layer,简称 BLL)是系统架构中体现核心价值的部分。它的关注点主要集中在业务规则的制定、业务流程的实现等与业务需求有关的系统设计,也就是说它是与系统所应对的领域(Domain)逻辑有关,很多时候,也将业务逻辑层称为领域层。

业务逻辑层在体系架构中的位置很关键,它处于数据访问层与表示层中间,起到了数据交换中承上启下的作用。由于层是一种弱耦合结构,层与层之间的依赖是向下的,底层对于上层而言是“无知”的,改变上层的设计对于其调用的底层而言没有任何影响。如果在分层设计时,遵循了面向接口设计的思想,那么这种向下的依赖也应该是一种弱依赖关系。因而在不改变接口定义的前提下,理想的分层式架构,应该是一个支持可抽取、可替换的“抽屉”式架构。正因为如此,业务逻辑层的设计对于一个支持可扩展的架构尤为关键,因为它扮演了两个不同的角色。对于数据访问层而言,它是调用者;对于表示层而言,它却是被调用者。依赖与被依赖的关系都纠结在业务逻辑层上,如何实现依赖关系的解耦,则是除了实现业务逻辑之外留给设计师的任务。

2、业务逻辑层的命名规范

每一层的命名规范都是不同的,但是基本操作的逻辑相同。

业务逻辑层的命名规范如下:

(1)     业务逻辑层通常命名为 BLL 或用解决方案名称 +BLL 的格式命名。

(2)     每个实体类通常在业务逻辑层有对应的业务逻辑类。类的格式为实体类名称 +Manager。

【看到这里,如果你还没关注我,可以点个关注,下次更新文章我通知你】

​3、业务逻辑层的类结构

业务逻辑层的作用更多是为了解耦,每个业务逻辑类的方法用于处理具体的业务规则。例如我们查询用户时需要从数据访问层的UserService类的getUserInfo获取用户信息回来,那么业务逻辑层也需要写一个UserManager.cs类定义一个getUserInfo的方法,用于同步操作数据访问层的数据返回前端操作。

所以BLL业务逻辑层这里,它的结构基本和数据访问层的结构一样。除非业务逻辑层不涉及数据访问层的调用,它的结构才会跟数据访问层不一致。

须知:业务逻辑层为了和数据访问层的方法易于调用理解,两个类的方法名尽量一致。

4、我写的书开始预售了!

最近正在写一本《ASP.NET Web动态网站》开发的书,预计2月底写完,敬请期待~

预售网址:【村长编写】14天零基础到入门搞定ASP.NET Web网页开发【书籍】预售

更多编程知识获取关注公众号:琉忆编程库

你可能感兴趣的:(三层架构)