1.描述软件架构与框架之间的区别与联系
软件架构:
架构和构架也就是通常所说的软件体系结构(software architecture。软件架构)是一系列相关的抽象模式,用于指导大型软件系统各个方面的设计。软件架构是一个系统的草图。软件架构描述的对象是直接构成系统的抽象组件。各个组件之间的连接则明确和相对细致地描述组件之间的通讯。在实现阶段,这些抽象组件被细化为实际的组件,比如具体某个类或者对象。在面向对象领域中,组件之间的连接通常用接口来实现。
软件架构并不仅仅关注软件本身的结构和行为,还注重其他特性:使用、功能性、性能、弹性、重用、可理解、经济以及技术的限制和权衡等。
软件框架:
软件框架是面向领域(如ERP、计算领域等)的、可复用的“半成品”软件,它实现了该领域的共性部分,并提供了一些定义良好的可变点以保证灵活性和可扩展性。也就是说软件框架是领域分析结果的软件化,是领域内最终应用的模板。
软件框架的行为调整机制是指如何针对具体的应用调整该框架的可变部分、如何在可变点加入特定应用模块所采用的方法和规则。
框架和架构的区别与联系:
1. 呈现形式不同.体系结构的呈现形式是一个设计规约,而框架则是程序代码.
2. 目的不同.体系结构的首要目的大多是指导一个软件系统的实施与开发;而框架的首要目的是为复用.因此,一个框架可有其体系结构,用于指导该框架的开发,反之不然.
3. 有种特殊的体系结构,DSSA(领域特定体系结构)其首要目的也是为了复用.
4. 有个叫体系结构风格的东西,将它用程序代码实现后就成了Corba,COM之类的东西,它们俩叫体