#读书笔记
在我们刚刚接触编程的时候也许就听过架构这个词,后来慢慢在工作的时候在公司会有个职位叫做架构师,也许还会有专门的一个小组叫做架构组。我第一次听这个词的时候就感觉是一种很高端的工作,它不是单纯的负责一个功能,而是负责的整个软件的生命周期以及未来的发展。但是随着工作时间推移,架构其实是需要我们每个程序员都要有的能力,只不过会因为职责范围的不同而不同,我认为架构师负责整个产品的生命周期和一位一线程序员负责好某个代码模块的工作是同等重要的。
就像本书说的:“软件架构的终极目标就是:用最小的人力成本来满足构建和维护的需求”,在我看来架构其实是一种思想,具有架构设计的代码会更加强壮,更加安全以及更加具有可读性。一套具有以上优点的代码那它所需要的人力成本还会高吗? 非常重要 :要持续重视那些好的,良好设计的,整洁代码的重要性
每个系统都可以用行为价值架构价值 来进行衡量,最理想的状态就是持续保持这两个指标同时在一个很高的水平
程序员为了让负责的系统可以按照指定的命令运转,帮助系统使用者提高效率以及带来利润,需要将需求转化为代码实现,并且在日常维护保证运行无误
software — 软件,ware 代表的是产品,soft则代表软件的灵活性。软件应该是容易被修改的,修改的成本应该和需要变更的范围成正比,而不是和软件的 “形状” 有关。这也就可能会导致软件维护的成本会每年成指数级的增长 所以架构的目标就是尽量设计出和软件形状无关的架构
工作中我们需要完成的需求大多都是紧急的状态,但是我们仔细想想这些需求重要吗?判断一个需求是否重要我们说了不算,只有客户以及市场说了才算,在我们的工作过程中难免遇到最开始是最紧急的需求但是到后来却没有带来多大收益。但是对系统的架构升级以及维护关乎到系统能否长久运行以及后来的维护成本,对于程序员的我们来说这应该是重要的事情 。 重要的一点:系统的架构升级以及维护是程序员的职责所系
这是第一篇读书笔记,其实主要想说说架构这件事,这不是架构师一个人的事,也不是大牛的专有的名词,这是影响我们每一行代码的事情,所以我们需要转变我们的想法,从现在开始关注每一行代码的架构,积少成多。