如何开展软件架构之什么是业务逻辑层

如何开展软件架构之什么是业务逻辑层

在软件架构领域中,有一种很流行的分层方式,即三层架构,分为表现层,业务逻辑层,数据访问层。甚至在一些设计中,进一步将业务逻辑层再细分为应用服务层与业务服务层。

三层架构分层如下图1所示:

图1

很明显,以上三层架构是按逻辑分层,其中,

表现层:职责是负责接收用户数据,并展示处理结果,如软件中的各种窗口,页面等。

数据访问层:职责是负责封装数据文件(如数据库,文件等)的访问细节

业务逻辑层:职责是啥呢?

那么什么是业务逻辑层呢?一开始接触三层架构时,我很迷茫。翻看大多数的三层架构demo,业务逻辑层似乎就只是对数据访问层的简单委托调用而己。那什么是业务逻辑层呢?

其实要回答这个问题,应该从三层架构分层的由来说起,为什么要将软件分成三层。

首先,软件都是为某个领域的特定业务而服务,接收用户输入数据,以业务需求为规则对数据进行处理。简而言之,软件就是为了业务而生,其内部的所有逻辑均可认为是业务逻辑,所以在架构分层时,自然而然的分层方式是为二层架构,如下图2所示:

 

图2

表现层:职责是负责接收用户数据,并展示处理结果,如软件中的各种窗口,页面等。

业务逻辑层:职责是负责将接收的用户数据以特定的业务规则处理

然而在业务逻辑层中由于有大量的数据访问操作,特别时,如果数据是存储在数据库中的话,业务逻辑层中将遍历各种Sql语句的构造,执行等操作,不论是从通用性考虑还是从个人工作技能考虑,都有必要将数据访问操作从业务逻辑层中分离出来,应而三层架构由此诞生了。

那么业务逻辑层是什么就清晰了,其职责就是将接收的用户数据以特定的业务规则处理,主要包括以下三个部门:

业务实体:业务中各种参与的实体,如在考勤业务中,有打卡员工,打卡时间,打卡机,老板等

业务规则:业务的运行规则,业务实体按规则进行动作,如员工8:30分前未打卡要扣工资等。

业务完整性约束:业务规则与业务实体的约束,如不能代人打卡等。

 

在软件开发过程中,业务规则由工作流来承载,业务实体可能被部署在数据库或内存中。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值