软件架构和设计模式有什么区别

小编 634

软件架构和设计模式有以下区别:1.概念不同;2.性质不同;3.目的不同;4.代码表示不同。概念不同在于,软件的架构是系统的一个草图,阐述了各个组件之间的通讯、划分层次;对软件设计中普遍存在的各种问题,所提出的解决方案。

1.概念不同

软件架构是指软件架构师在软件服务上,对复杂的软件整体规划的一种蓝图,一般是分层画出各个组件的关系;设计模式是指针对一些编程实际的问题所提出的抽象解决方案,用类与类之间的关系相互作用以达到目的。

2.性质不同

设计模式是比软件架构更小的元素,一个软件架构中往往含有一个或多个设计模式,软件架构总是针对某一特定应用领域,但同一设计模式却可适用于各种应用。可以说,软件架构是应用程序,而设计模式是开发应用程序的具体方法。

3.目的不同

软件架构是将客户的需求抽象为组件,并能够描述这些抽象组件之间的通信和调用,考虑的是代码重用;而设计模式是针对单一问题的设计思路和解决方案,目的是设计重用。

4.代码表示不同

软件架构可以用代码表示,也能直接执行或复用;而对设计模式而言,只有实例才能用代码表示。因为,设计模式是对在某种环境中反复出现的问题及解决该问题的方案的描述,它比软件架构更抽象。

延伸阅读

软件架构设计的七大原则是什么

1.开闭原则:是指一个软件实体(类、模块和函数)应该对扩展开放,对修改关闭,所谓的开闭,也就是对扩展和修改两个行为的原则。它强调的是用抽象构建框架,用实现扩展细节,可以提高软件系统的可复用性和可维护性。

2.依赖倒置原则:是指设计代码结构时,高层模块不应该依赖底层模块,二者都应该依赖其抽象。抽象不应该依赖细节,细节应该依赖抽象。通过依赖倒置,可以减少类与类之间的耦合性,提高系统的稳定性,提高代码的可读性和可维护性,并且能够降低修改程序所造成的风险。

3.单一职责原则:是指不要存在多于一个导致类更改的原因。

4.接口隔离原则:是指用多个专门的接口,而不使用单一的总接口,客户端不应该依赖它不需要的接口。

5.迪米特原则:是指一个对象应该对其他对象保持最少的了解,又叫最少知道原则,尽量降低类与类之间的耦合度。

6.里氏替换原则:一个软件实体如果适用于一个父类,那么一定适用于其子类,所有引用父类的地方必须能透明的使用其子类的对象,子类对象能够替换父类对象,而程序逻辑不变。

7.合成复用原则:是指尽量使用对象组合(has-a)/聚合(contains-a)而不是继承关系达到软件复用的目的。

回复

我来回复
  • 暂无回复内容

注册PingCode 在线客服
站长微信
站长微信
电话联系

400-800-1024

工作日9:30-21:00在线

分享本页
返回顶部