资本家主要目标是赚钱、赚很多很多的钱;他们给提出的要求是降本增效
那么作为架构师,目标是什么呢?
在《整洁架构》书中作者写到架构的主要目的是支持系统的生命周期。良好的架构使系统易于理解,易于开发,易于维护和易于部署。 最终目标是最小化系统的寿命成本并最大化程序员的生产力
大多数程序员心里觉得应该是展示最牛B的技术才对,可现实却只是资本家的工具而已,是不是有些惊讶
软件的核心是它为用户解决领域相关问题的能力,保持业务价值的持续交付
可在软件行业,交付能力的持续性是相当有挑战性的,也许前期交付很快,但慢慢交付就很慢,质量也会下降,甚至哪怕一次小小的改动都要经历很久,更可怕的是无法交付,为什么呢?
在之前的相关文章中也提过,有两张图:
《架构师》中提到软件需求并不只是功能需求:
软件复杂度并不仅仅是业务复杂度:
在一起起看似快速交付背后,不合理的设计或者实现积累了过多的技术债,造成无法交付
所以架构师最重要的事就是解决软件中的复杂性
在软件项目中,任何方法论如果最终不能落在“减少代码复杂度”,都是有待商榷的
软件架构设计的实质,是让系统能够更快地响应外界业务变化,并且使得系统能够持续演进
架构设计的主要目的是为了解决软件复杂度带来的问题
《DDD应对复杂》[1]中也提到复杂的来源,对于软件复杂性以及应对方案,特定画了一幅图
对于图中复杂性来源和应对,可以对照以前的文章理解,也可以直接留言交流
References
[1]
《DDD应对复杂》: http://www.zhuxingsheng.com/blog/ddd-copes-with-complexity.html