总原则
做系统设计方面的决定都是在做取舍。
基于要达到的目标去定义一些原则和实践对做设计来说非常有好处。
战略目标
战略目标关心的是公司的走向以及如何才能让自己的客户满意。
战略目标的层次一般都很高,但通常不会涉及技术这个层面,一般只在公司或者部门层面制定。
需要确保技术层面的选择能够与战略目标一致。
根据战略目标制定原则
为了和更大的目标保持一致,会制定一些具体的规则(原则),它不是一成不变的。
原则最好不要超过10个,或者能够写在一张海报上,不然大家会很难记住。而且原则越多,它们发生重叠和冲突的可能性就越大。
约束
约束是很难(或者说不可能)改变的,但原则是自己决定的。
应该显式地指出哪些是原则,哪些是约束,这样用户就会很清楚哪些是不能变的。
把原则和约束放在同一个列表中是有好处的,这样就可以不时地回顾一下这些约束是否真的不可改变。
实践
通过相应的实践来保证原则能够得到实施,这些实践能够指导如何完成任务。
实践是技术相关的,而且是比较底层的,所以任何一个开发人员都能够理解。
这些实践包括代码规范、日志数据集中捕获或者HTTP/REST作为标准集成风格等。
由于实践比较偏技术层面,所以其改变的频率会高于原则。
实践应该巩固原则。
将原则和实践相结合
有些原则实践分界线不是很明显。
关键是要有一些重要的原则来指导系统的演化,同时也要有一些细节来指导如何实现这些原则。
例子
请关注我的微信公众号
个人微信公众号
技术交流群 (仅作技术交流):642646237
请关注我的头条号:
网友评论