初识软件架构设计

凡见诸相非相,即见如来~《金刚经》
凡事不拘泥于具体的形式,而是要理解表相背后的设计原理和思想
软件架构(software architecture)就是软件的基本结构。 图片来自维基百科。

元素关系:
软件架构是软件系统的基本结构,也是软件设计最核心的部分。软件架构包含架构元素和元素间关系,架构文档是最终交付的产物。 不同相关方的关注点不同,针对不同相关方在不同的阶段架构师会输出不同的架构视图。
架构的本质是管理复杂度。抽象、分层、分治和演化是应对和管理复杂度的四种最基本武器。
架构师是做架构设计、对系统架构负责的那个人。 架构师是一顶帽子,而不是一把椅子;架构师是一个角色而不是一个职位。
框架是用来实现某一类应用的结构性的程序,是对某一类架构方案可复用的设计与实现。
框架设计时应遵循设计原则,定义好接口、规范,是架构师约束开发的主要手段。
框架调用应用程序代码
应用程序代码调用类库的工具代码
架构师用框架保证架构的落地
架构师用工具提高开发效率