软件构架实践阅读笔记二(读后感)

    系统的体系结构视图是抽象的,它不考虑实现的细节、算法和数据表示,重点关注“黑匣子”元素的行为和交互。开发一个软件体系结构是设计具有所需属性的系统的第一步。关于软件体系结构,有一个定义:程序或计算机系统的软件体系结构是系统的一个(或多个)结构,它由软件元素、元素的外部可见属性以及它们之间的关系组成。我认为建筑受到很多因素的影响,这些因素的实施会随着环境的变化而变化。即使同一设计师设计了一个系统,如果时间太紧或时间不多,决策就会不同。在系统的每一个开发中,系统要求可以清楚地反映系统最终特性的一些期望。并非系统要求中的所有内容都与系统的最终性质直接相关。开发过程或工具的选择可能受到系统要求的限制,但系统要求的描述只是第一步,我们需要通过确定与体系结构相关的影响因素来建立ABC。该框架还受到系统利益攸关方的影响,这些利益攸关方关切的问题各不相同,但需要系统在其关切领域提供保证或优化。经认证的系统需要满足所有方面的要求:性能、可靠性、可用性、平台兼容性、内存利用率、安全性以及与其他系统和行为的互操作性。这些因素会影响系统。结构也受到了开发组织、设计师的素质和经验、技术环境等因素的影响。

    此外,框架并非注定是好或坏,各种框架总是或多或少满足某些系统的要求。在体系结构的概念方面,第一个框架定义了软件元素。体系结构包含关于每个元素应该如何相互关联的信息,该体系结构必须省略与其元素交互的信息,因此首先从它们使用的细节、其他元素使用以及其他元素交互的细节中提取框架。第二,定义清楚地表明系统可能和确实由多个结构组成。第三,定义意味着每个计算系统都有软件架构。第四,只要元素的行为可以从其他元素的角度观察或区分,这个元素的行为就是框架的内容。最重要的是,这一定义不涉及对框架的优点的评价。

原文地址:https://www.cnblogs.com/sanzangtdashi/p/6386022.html