2018-08-21code complete 笔记
2018-08-21 本文已影响0人
闲散老人
架构先决:
1先做综述,不然谁知道你下面设计的东西是怎么拼的、
定义程序或者系统的主要构造块或子系统,遵循28原则,百分之20的构造快完成百分之80的行为。
每个构造块尽量只扫自家门前雪。定义好每个构造块的通信规则。决定谁能来我家玩?
高内聚低耦合?
2.数据设计(data design):数据库和文件的设计描述 ,数据库表设计,采用什么策略进行访问?文件应该怎么读取访问存储。单数据库或者多数据库使用,访问交互。
3.业务规则(bussiness rules),
4.用户界面设计(user interface design),
5.资源管理(resource management)
数据库连接线程。app应用的内存使用等。。
6.安全性:
不受信数据的处理规则,保密数据的处理,加密,错误信息的处理。或者设计防御机制?
7.性能:
算法?数据结构?
8.可伸缩性(扩展性?)
9.互用性:
数据资源的共享?安全怎么做?
10.输入输出控制,io检错
11.错误系统的设计(怎么设计?):
错误等级的设计,错误类型的不同处理?等等,如何抛出?
12.容错性:
增强系统可靠性,数据恢复,系统恢复,局部和全局恢复?
最后架构可行性和过度工程。