clean Architecture笔记
序
古老的教诲
如果你觉得好架构的成本太高,那你可以试试选择差的架构加上返工重来的成本;
- 蓝绿部署;
Q: 一套不稳定但要紧的系统,还有各种问题,变量命名非常随意,依赖逻辑错综复杂,层次结构乱七八糟…
A:SOC(关注点分离)、SRP(单一职责原则)、OCP(开闭原则);
设计与架构究竟是什么?
设计架构不分家;
乱麻系统:对代码质量和设计结构优化存在持续、长久的忽视;
现象:救火,加班,产出始终上不去,大部分时间都消耗在修修补补,拆了东墙补西墙,偶尔有精力做点小功能;
问题:持续低估好的设计、简洁代码的重要性;
总结:先知道什么是优秀的软件架构;了解系统架构的各种属性与成本和生产力的关系;
价值维度
艾森豪威尔矩阵
我有两种难题:紧急和重要的,而紧急的难题永远是不重要的,重要的难题永远是不紧急的;
请记住:如果忽视软件架构的价值,系统将会变得越来越难以维护, 终会有一
天,系统将会变得再也无法修改。 如果系统变成了这个样子,那么说明软件开发团
队没有和需求方做足够的抗争, 没有完成自己应尽的职责。
编程范式总览
structured programming
object-oriented programming
functional programming