`

软件分层的优缺点

阅读更多

一、软件层的特性

 

   软件层有如下特性:

 

    1、每个层由一组相关的类或组件构成,共同完成特定的功能。

 

    2、层与层之间存在自上而下的依赖关系,即上层组件会访问下层的组件API,而下层组件不依赖于上层组件。例如表示

层依赖于业务逻辑层,而业务层依赖于数据层。

 

    3、每个层对上层公开API,但具体的实现细节对外是透明的,当某一层的实现发生变化时,只要API不变,就不会影响到其他层的实现。

 

    总的来讲,软件分层的最基本特征就是层与层之间存在自上而下的依赖关系。

 

二、软件分层的优点

 

   恰当的进行软件分层,可以提高软件的以下性能:

 

    1、可伸缩性,指应用程序是否能支持更多的用户。

 

    2、可维护性、灵活性,比如当需求发生变化时,只需要修改软件的一部分,不会影响到其他部分的代码,降低了层 

与层之间的耦合度。

 

    3、可扩展性,可以很方便的在现有系统中新功能,而层少越少,新增加的功能就越容易破坏现有程序的结构,层数多的话,就可以在第个层中找扩展点。

 

    4、可重用性,可以减少程序代码冗余,每一层都可以多种用途,满足于多种需求,比如,业务逻辑层可以被多种表述层共享。

 

     5、可管理性,程序分层后可以降低系统管理的难易程序,将程序分为多层后,可以将工作分解给不同的开发小组,从而便于管理,系统越复杂、规模越大,分的层数就需越多。

 

三、软件分层的缺点

 

      软件分层越多,对软件设计人员的要求也就越高,在设计阶段,必须花更多的时间构思合理的体系结构,如考虑如何划

分层、定义每个层的职责;如果在体系结构方面存在缺陷,比如,层与层之间出现自下而上的依赖关系,一旦业务逻辑发生

变化,可能表示层的代码也要修改。

 

      在调试方面,随着层数增加,调试也会越困难,比如我们常用的三层架构,依赖关系都是自上而下的,比如表现层出现

了bug,可能是表现层出现的问题,也有可能是业务逻辑层出现的,也有可能是数据访问层出现的,像这种情况下,我们调

试时就需要将每层的开发人员联合起来,才可能找到bug的原因。

 

      软件分层越多,系统的性能也会有所影响。

分享到:
评论
1 楼 wushipan_easy 2012-02-29  
“1、可伸缩性,指应用程序是否能支持更多的用户"  怎么解释可以支持更多的用户

相关推荐

    分层自动化测试

    该文档了讲述了自动化测试的分层,讲述每一层自动化测试优缺点。

    云大软件工程实验三-软件设计.pdf

    构造一个表,列出教材中第11章中讨论的各种体系结构参 考模型的优缺点。 体系结构模 型 优点 缺点 容器模 型 (1)共享大量数据时的 一个高效方法;(2)生 产数据的子系统不需要 关心数据如何被其他子 系统使用;(3)...

    基于struts+hibernat的会员管理系统设计与实现

    讨论了J2EE软件体系结构的发展和软件分层的优势与不足,研究了开发Web应用的Model 1和Mode12 (MVC)体系结构,比较了两者的优缺点。讨论了几种实现MVC设计模式的框架的模式特点、使用场合及优缺点,在此基础上详细讨论...

    计算机网络技术基础复习题2017.doc

    电路交换的概念及优缺点?特点? 20. 报文交换的概念及优缺点?特点? 21. 分组交换的概念及优缺点?特点? 22. 信元交换技术的概念及组成? 23. 计算机网络的拓扑结构? 24. 计算机网络的拓扑结构的类型及特点? ...

    计算机网络技术简答题.docx

    每种类型的优缺点是什么? 答:总线型。具有结构简单、使用电缆少、易于扩展、可靠性较高;缺点是访问控制复杂、受总线长度限制而延伸范围小; 星型。具有结构简单易于诊断与隔离故障、易于扩展网络,便于管理等优点...

    计算机网络复习资料 用于应付考试

    计算机网络复习资料 1.计算机网络的发展可划分为几个阶段?每个阶段各有何特点? 答:计算机网络的发展可分为以下四个阶段。 (1)面向终端的计算机通信网:其特点是...2. 试举出对网络协议的分层处理方法的优缺点。

    智能型电线电缆的绝缘电阻与通断关系

    论文围绕项目要求,分析比较了相关电缆检测方法的优缺点与可行性。在此基础 上,深入阐述了导通关系与绝缘电阻的测量模块、高压产生模块、数据采集模块和USB 接口模块等硬件电路的设计实现过程。同时,对整个系统的...

    3D打印100问.doc

    技术优缺点: SLA 技术的优势 光固化成型法是最早出现的快速原型制造工艺,成熟度高,经过时间的检验。 由CAD数字模型直接制成原型,加工速度快,产品生产周期短,无需切削工具与模具。 可以加工...

    如何使用ANT传感器网络实现温度监测系统的设计和实现

    本文 研究 了无线传感器网络的通信协议 分析 比较了 目前 广泛使用的 ZigBee 、 ANT 等通信协议 的优缺点,并根据温室及 智能 楼宇 等应用环境的 温度变化规律和空间 特征 ,设计了基于 ANT 无线传感器网络的温度...

    计算机网络课后习题答案第五版(谢希仁主编)

    试从多个方面比较电路交换、报文交换和分组交换的主要优缺点。 答:(1)电路交换电路交换就是计算机终端之间通信时,一方发起呼叫,独占一条物理 线路。当交换机完成接续,对方收到发起端的信号,双方即可进行通信...

    计算机网络(谢希仁 第五版)习题答案

    试从多个方面比较电路交换、报文交换和分组交换的主要优缺点。 答:(1)电路交换电路交换就是计算机终端之间通信时,一方发起呼叫,独占一条物理 线路。当交换机完成接续,对方收到发起端的信号,双方即可进行通信...

    计算机网络课程设计---小型网络设计.doc

    " "2、加深理解网络分层结构概念尤其是对会话层、表示层、应用层等高层协议软件 " "的通信功能、实现方法,掌握网络互连设备的使用及工作原理,掌握IP地址的配置" "; " "3、初步掌握局域网的设计技术和技巧培养...

    计算机网络习题答案(第五版)

    3、试从多个方面比较电路交换、报文交换和分组交换的主要优缺点。 答: (1)电路交换:电路交换就是计算机终端之间通信时,一方发起呼叫,独占一条物理线路。当交换机完成接续,对方收到发起端的信号,双方即可...

    千兆以太网技术与应用

    11.1.5 中继器的优缺点 115 11.1.6 共享千兆以太网的应用 115 11.2 交换式集线器 117 11.2.1 工作组级与园区网级交换机 117 11.2.2 千兆以太网交换机的特点 118 11.2.3 千兆交换机体系结构问题 120 11.2.4 缓冲式...

    《计算机操作系统》期末复习指导

    (4)页式存储管理的优、缺点 优点: •虛存量大,适合多道程序运行,用户不必担心内存不够的调度操作; •内存利用率高,不常用的页面尽量不留在内存; •不要求作业连续存放,有效地解决了...

    asp.net知识库

    .NET的反射在软件设计上的应用 关于跨程序集的反射 实现C#和VB.net之间的相互转换 深入剖析ASP.NET组件设计]一书第三章关于ASP.NET运行原理讲述的补白 asp.net 运行机制初探(httpModule加载) 利用反射来查看对象中的...

    网通交换培训教材

    5.4.3 常见接口的优缺点比较及未来电信网管接口的发展展望 122 5.5 帐号及密码管理 123 第二部分: 七号信令 第1章 公共信道信令基本概念 126 1.1 公共信道信令的产生 126 1.2 公共信道信令的发展 127 1.3 公共信道...

    net学习笔记及其他代码应用

    11.用.net做B/S结构的系统,您是用几层结构来开发,每一层之间的关系以及为什么要这样分层? 答:一般为3层 数据访问层,业务层,表示层。 数据访问层对数据库进行增删查改。 业务层一般分为二层,业务表观层...

Global site tag (gtag.js) - Google Analytics