zoukankan      html  css  js  c++  java
  • 《架构漫谈》读后感

    这几天,读了老师推荐有关架构的一篇系列文章《架构漫谈》,其中通俗易懂的语言,风趣幽默的风格,形象明了的对比形式让我对架构有了更进一步的了解。

    作者通过一个人群的分工配合的例子引出了他对架构的一个定义:把一个整体(完成人类生存的所有工作)切分成不同的部分(分工),由不同角色来完成这些分工,并通过建立不同部分相互沟通的机制,使得这些部分能够有机的结合为一个整体,并完成这个整体所需要的所有活动。再总结一下,架构是一个有不同部分构成的一个整体,且不同部分之间是相互联系的。架构是由人类自身的缺陷和出于目的而产生的。人类自身的能力和专注力有限,而想要的目标却往往是一个人不能达到的,于是不同的个体联系成一个整体,通过个体之间的协调和沟通而达到一个共同的目的,使得整体的存在有明确的意义。

           如何做好架构呢?切分,我们要对整个项目需求进行切分,还要把控对于利益的调整。一旦确认问题的主体,我们接下来会发现如下问题,某个或者某些利益相关人负载太重,或者时间上空间上负载太重,或者某个,某些利益相关人的权利和义务不对等。所以我们需要在一定原则上进行切分,第一是自然就无法切分的部分,第二是不违反人性。随后就是一系列建模和组织架构了。成为架构师的前提条件、如何发现“是谁的问题”、架构师的权利和义务等话题。正如作者所说,架构师必须是一个组织的领导人,有权利调动这个组织的架构,才能够更好的发挥架构师的作用,更好的把利益的调整落到实处。架构师的前提条件如果一个人在工作中,只是致力于完成自己的工作,以做好自己的工作为主要目标,那么最多只能成为一个工匠,无法成为一个架构师。因为这个过程解决的还是自己的问题,并没有时间的压力,可以随意什么时候做完都可以。架构师的权利和义务架构师是要去平衡别人的利益,甚至会调整别人的利益的。一旦架构师是全心全意的为别人的利益服务,自然而然的架构师就拥有了强有力的影响力,肯定会是一个leader。但是只是民意上的leader是没有用的,不能完全发挥架构师的能量。

           很多时候问题的产生都是因为沟通的误解,或者主观上有很多不必要的利益诉求导致的。但是总还有一部分确实是有问题的,需要做调整,那么就必须要有所动作,做相应的调整。这个调整就是架构的切分。所以切分是利益的调整。切分也需要有原则,这四个原则是:连续时间内的活动不能切分;权利义务对等;不超出一个人的负载;对外部透明。总结下来,架构的切分的导火索是人的负载太重。架构的切分实际就是对 stakeholder 的利益进行切分或合并,使得每个stakeholder 的权责是对等的,每个 stakeholder 可以为自己的利益负责。架构切分的最终结果都会体现在组织架构上,只有这样才能够让架构落地并推进。架构切分的结果一定是一个树状,这也是为什么会产生分层。层数越多沟通越多,效率越低,分层要越少越好。尽可能变成一颗平衡树,才能让整个系统的效率最大化。

           架构师,首先,架构师的前提条件,那就是发现问题并提出有效解决方案处理问题的人,架构师一定拥有丰富的经验和技术,而且他是调整利益平衡利益的人。之后,从架构的角度写代码,核心是分层,将业务,技术,逻辑处理分成各自耦合度相对降低的层次,让软件的运营成本降至最低,而且利于维护。最后就是理清技术、业务和架构的关系了。技术是为了解决业务的问题而产生的,没有了业务,技术就没有了存在的前提。有了更好的技术,效率更差的技术就会被淘汰,一切都遵从人类的利益诉求—也就是业务。再者,在解决同一个业务的问题的前提下,更高效,更低成本的技术将代替其他技术。所以架构师应该承担起解决业务问题的角色,也需要具备识别技术采取技术相应的能力。

  • 相关阅读:
    Redis5设计与源码分析 (第17章 HyperLogLog相关命令的实现)
    Redis5设计与源码分析 (第16章 GEO相关命令)
    ES5和ES6函数的this指向
    vue响应式原理 (响应式并不等于数据双向绑定,千万不要混淆)
    vue中data为什么是函数而不是对象
    vue-enum 前端常量 枚举工具
    Vue3 写业务逻辑不适合用TS(TypeScript)
    vue-property-decorator vue3 ts 用的装饰器
    github git clone下载加速 && npm install 下载加速
    vue3 如果用ts,导出时候要用 defineComponent,这俩是配对的,为了类型的审查正确
  • 原文地址:https://www.cnblogs.com/wmy-666/p/10545708.html
Copyright © 2011-2022 走看看