关于对软件的分层架构模式的理解

简介:

       分层模式是最通用的架构,它也叫N层架构模式。这种架构是大多数Java EE 应用的实际标准,因此很多架构师、设计师,还有程序员都知道它。这种架构模式非常适合传统的IT通信和组织结构,很自然地成为大部分应用的第一架构的选择。

描述:

       封层架构模式中的各个组件,垂直分布在不同层,每一层都承担一个角色。分层架构模式没有规定层的类型和数量,但是大多数的通常包括4层:表示层、业务层、持久化层和数据层。在某些具体情况下,业务层和持久化层也可以合二为一。所以,小程序往往只有三层,而大工程可以包括五层甚至更多。四个分层如下:

                                      

       分层架构模式,把整个工程划分为不同的层,每一层都承担一个明确的职责和角色。下面介绍一下每一层的职责和角色:

       表示层的职责是处理所有的用户接口、处理浏览器通信逻辑。平时体现在用户界面方面。

       业务层的职责是执行用户请求所期望的业务逻辑。主要是为了实现业务逻辑。

       持久化层的职责把持久的动作封装成一个独立的层,可以降低功能代码之间的关联。

       数据层的职责是负责数据库的访问,可以访问数据库系统、二进制文件、文本文档或是XML文档。其实主要就是对数据表进行S、I、U、D。查询,插入,更新,删除。

       分层架构模式的特性:风险分散在各个组件。某一层的各个组件只处理这一层承担的逻辑。比如,表示层的各个组件只处理表示相关逻辑,而业务层的各个组件只处理业务相关逻辑。这样更有易于构建架构中有效的角色和职责模型,也易于开发、测试、组织和维护工作。

关键概念:

       架构中每一层都表示为“closed”,这是分层架构中重要的概念。一个“closed”的层,表示一个请求在层与层之间活动时,上面层来的请求必须穿越这一层才能达到下面的层。意思就是不可以跨层穿越,必须要一级一级才可以。这就是层的隔离。架构中的某一层的改变,并不会影响到其他层的组件。改变被隔离在本层的组件之间,或者可能影响另一个相关的层。如果允许两个层之间可以直接访问,那么会影响到两个层,会导致严重的耦合,不利于后期修改,而且会大大提高成本。

优点:

       1.结构简单,容易理解和开发

       2.不同技能的程序员可以分工,负责不同的层,适合大多数软件公司的组织架构

       3.每一层都可以独立测试,其他层的接口可以模拟解决。

缺点:

       1.一旦环境变化,需要代码调整或增加工能时,通常比较麻烦和费时

       2.部署比较麻烦,即时只修改一个小地方,往往需要整个软件重新部署,不容易做持续发布。

       3.软件升级时,可能需要整个服务停止。

       4.扩展性差,用户请求大量增加时,必须一次扩展每一层,由于每一层内部是耦合的,扩展会很困难。

转载于:https://www.cnblogs.com/xieshiyu/p/9066238.html

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值