前端架构设计的方法论
系统的架构设计用来定义应用程序的基本特征和行为。
- 良好的架构是系统构建成功的关键。
-
架构驱动
的软件开发是构建复杂系统的最有效方法,架构驱动的方法优于需求驱动,文档驱动和方法论(抽象推理的能力)驱动。虽然方法论(抽象推理的能力)可以帮助我们取得项目的成功,但是它并不是决定性的因素。
1、初期如何设计架构
所有架构的核心:关注点分离
(分离角色和职能,分离之后的结果是对具体功能的高度抽象)。
架构设计的过程其实也是在梳理需求的过程中不断标识
、封装
和操纵
关注点。
根据迪米特法则
和开闭原则
,分离之后的职责对象应该高度独立
和封闭
(优点是不需要关系它们内部的具体实现,只关心输入和输出即可)。
更容易构造有效的(职责)角色
和强力的模型
,变的更好开发,测试,管理和维护。
2、构建系统的步骤
1、抽象职责(功能模块)
之间的相互作用
2、抽象职责
和数据流
之间的关系
3、注意的四个点
1、扩展性
2、弹性(伸缩性)
3、灵活性
4、稳定性
4、评判标准
1、灵活性
响应外部环境变化的能力,架构中是否便捷做一些改变,功能模块间的紧耦合是降低灵活性的关键。
2、易于部署
3、易于开发
4、可测试性
职责和数据流的划分,便于分块测试。
5、伸缩性
系统是否利于扩展,紧耦合与职责划分不清晰是降低伸缩性的关键。
6、性能
任何架构的本质是在处理数据流,所以数据流的流转效率决定了该架构的性能。
最后
本文提出的这些观点实际上也是属于架构设计的方法论
。在掌握并熟练运用了这些方法论之后并实践到项目中,慢慢的才会搭建出更好的架构。
ps:由于本人比较懒,所以没有针对一些名词做具体讲解和示例。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。