应对复杂性

资本家主要目标是赚钱、赚很多很多的钱;他们给提出的要求是降本增效

那么作为架构师,目标是什么呢?

在《整洁架构》书中作者写到架构的主要目的是支持系统的生命周期。良好的架构使系统易于理解,易于开发,易于维护和易于部署。
最终目标是最小化系统的寿命成本并最大化程序员的生产力

大多数程序员心里觉得应该是展示最牛B的技术才对,可现实却只是资本家的工具而已,是不是有些惊讶

软件的核心是它为用户解决领域相关问题的能力,保持业务价值的持续交付

可在软件行业,交付能力的持续性是相当有挑战性的,也许前期交付很快,但慢慢交付就很慢,质量也会下降,甚至哪怕一次小小的改动都要经历很久,更可怕的是无法交付,为什么呢?

在之前的相关文章中也提过,有两张图:

《架构师》中提到软件需求并不只是功能需求:

软件复杂度并不仅仅是业务复杂度:

在一起起看似快速交付背后,不合理的设计或者实现积累了过多的技术债,造成无法交付

所以架构师最重要的事就是解决软件中的复杂性

在软件项目中,任何方法论如果最终不能落在“减少代码复杂度”,都是有待商榷的

软件架构设计的实质,是让系统能够更快地响应外界业务变化,并且使得系统能够持续演进

架构设计的主要目的是为了解决软件复杂度带来的问题

《DDD应对复杂》中也提到复杂的来源,对于软件复杂性以及应对方案,特定总结画了一幅图

公众号:码农戏码
欢迎关注微信公众号『码农戏码』