软件体系风格

来源:互联网 发布:厦门流程优化招聘 编辑:程序博客网 时间:2024/05/16 17:13

1、定义

软件体系结构风格是指某一特定应用领域系统组织方式的惯用模式
体系结构定义了一个系统家族,即定义了一个词汇表和一组约束。词汇表包含了一些构件和连接件类型,而约束指出的是如何将这些构件和连接件组合起来。
体系结构反映了众多系统当中共有的结构和语义特性,并指导如何将各个模块和子系统有效地组织成一个完整的系统。

2、BS风格的优缺点

浏览器/服务器(B/S)风格就是三层应用结构的一种实现方式,其具体的结构为:浏览器/Web服务器/数据库服务器
优点:
1、基于B/S体系结构的软件、系统,安装修改和维护全都在服务器端解决。用户在使用系统时,仅仅需要一个浏览器就可以运行全部的模块,真正达到”零客户端“,很容易在运行时自动升级。
2、B/S体系结构还提供了异种机、异种网、异种应用服务的联机、联网、统一服务的最现实的开发性基础。
缺点:
1、没有集成有效的数据库处理功能,对数据的处理功能不强
2、安全性难以控制
3、在数据库查询等响应速度要远远低于C/S体系结构
4、B/S体系结构的数据提交一般以也页面为单位,数据的动态交互性不强,不利于在线事务处理(OLTP)应用

3、CS风格

优点:
1、模式简单,易于人们理解和接受
2、灵活、易维护与扩充:系统的客户应用程序和服务器构件分别运行在不同的计算机上,系统中每台服务器都可以适合个构件的要求,这对硬件和软件的变化显示出极大的适应性和灵活性,而且易于对系统进行扩充和缩小。
3、资源可以进行合理配置:在C/S体系结构中,系统中的功能充分隔离,客户应用程序开发集中于数据点显示和分析,而数据库的服务器的开发集中于数据的管理,不必在每一个新的应用程序中都要对一个DBMS进行编码,将大的应用处理任务分布到许多通过网络连接的低成本计算机上,以节省大量的费用!

缺点:
1、开发成本较高
2、客户端程序设计复杂
3、用户界面风格不统一,使用复杂,不利于推广使用
4、软件移植困难
5、软件维护和升级困难
6、新技术不能轻易应用

4、管道过滤器风格

优点:
1、使得软构件具有良好的隐蔽性和高内聚、低耦合的特点
2、允许设计者将整个系统的输入/输出行为看成是多个过滤器的行为的简单合成
3、支持软件重用。只要提供适合在两个过滤器之间传递的数据,任何连个过滤器都可以被连接起来
4、系统维护和增强系统性能简单,新的过滤器可以增加到现有系统中来,旧的可以杯改进的过滤器替代掉
5、允许对一些如吞吐量、死锁等属性的分析
6、支持并行执行,每个过滤器是作为一个单独的任务完成,因此可以与其他任务并行执行

缺点:
1、通常导致进程成为批处理的结构
2、不适合处理交互的应用
3、因为在数据传输上没有通用的标准,每个过滤器都增加了解析和分析数据的工作,这样就导致了系统性能的下降,并增加了编写过滤器的复杂性

5、OO风格

优点:
1、因为对象对其他对象隐藏它的标识,所以可以改变一个对象的表示,而不影响其他的对象
2、设计者可将一些数据存取操作的问题分解成一些交互的代理程序集合

缺点:
1、为了使一个对象和另外一个对象通过过程调用等进行交互,必须知道对象的标识。只要一个对象的标识改变了就必须修改所有其他明确调用它的对戏那个
2、必须修改所有显式调用它的其他对象,并消除由此带来的一些副作用

6、层次体系结构

优点:
1、支持基于抽象程度递增的系统设计,使设计者可以把一个复杂系统按递增的步骤进行分解
2、支持功能增强因为每一层至多和相邻的上下层交互,因此功能的改变最多影响相邻的上下层
3、支持重用,只要提供的服务接口的定义不变,同一层的不同实现可以交换使用,这样就可以定义一组标准的接口,而允许各种不同的实现方法

缺点:
1、并不是每个系统都可以很容易地划分分层模式,甚至即使一个系统的逻辑结构是层次化的,处于对系统性能的考虑,系统设计师不得不把一些低级或高级的的功能综合起来
2、很难找到一个合适的、正确的层次抽象方法

0 0