首页 > 其他分享 >架构漫谈阅读笔记

架构漫谈阅读笔记

时间:2023-02-19 18:57:15浏览次数:39  
标签:架构 漫谈 笔记 问题 切分 解决 架构师

架构漫谈读后感

架构漫谈是由一个架构师王概凯写的一个专题,是以他的实际架构经验为基础,讨论是什么是架构,怎样做好架构,怎么写好程序等一些问题。

共分为九个部分:

1)  什么是架构?

首先把架构的概念讨论明白,然后在对架构进行分析才显得清晰有意义。架构这个词在软件工程很早之前就已经出现了,在人类的早起大家的衣食住行都靠自己,不需要合作,这时候自然不需要架构。但是经过一段发展,人类发现合作的力量是巨大的,每个人都有自己所擅长的部分,在进行分工合作的时候产生的结果往往大于个人,这时候就产生了社会的架构。所以说,由不同角色来完成这些分工,并通过建立不同部分相互沟通的机制,使得这些部分能够有机的结合为一个整体,并完成这个整体所需要的所有活动,就是架构。从中可以看出架构产生的动力有五个:由人执行;每个人能力有限;每个人时间有限;目标期望高;目标复杂。从更细致的方面来说:架构是根据要解决的问题定边界;对目标系统按某原则切分;并对分块设立沟通机制;使得分块能够联系起来成为整体,完成工作。

2)  认识概念是理解架构的基础

理解概念对于理解这件事物来说十分重要,就像说桌子一样,同样是有腿有木板搭建,而我们会在桌子上吃饭不在柜子上吃饭,原因就是桌子实际上是为了解决人坐在椅子上,手还能够支撑在一个平面上继续开展活动的问题,一般会和椅子配对出现。坐在椅子上工作,对着柜子有一个很严重的问题,就是腿无法展开的问题。当这么坐着超过半小时就知道是什么痛苦了。所以桌子的平面下方一定会有一个足够容纳膝部和小腿的空间,来解决这个问题。解决了这些问题的装置,才能称之为桌子。所以理解概念的背后用途,才能更好的解决问题。

3)  如何做好架构——识别问题

做好架构首先需要做的就是识别出需要解决的问题。一般来说,如果把真正的问题找到,那么问题就已经解决 80%了。这个能力基本上就决定了架构师的水平。我们要解决的问题不仅仅是表面上的工作,架构师需要完成的是隐藏的用户实际需要解决的问题。最主要的两个问题就是1. 这是谁的问题? 2. 有什么问题?架构师的主要任务大部分在于问题一上。

4)  如何做好架构——架构切分

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

5)  什么是软件

软件的本质,其实就是通过把人类的日常工作生活虚拟化,减少成本,提升单个人员的生产力,提升人类自己的利益。

6)  架构要解决什么问题

业务问题,计算机问题。有两种架构:1. 软件因为流量增大而分拆成不同的运行单元,在机器上部署所形成的架构,属于软件架构。 2. 每个运行单元为了让不同角色的人,比如前端,业务,数据存储等能够并行工作,所分成的代码架构,也属于软件架构。

7)  给架构师实权

好的架构师应该从别人的利益角度考虑,并且要让别人知道自己的利益与义务之间是对等的。

8)  从架构考虑看如何写好代码

9)  理清技术业务架构之间的关系

准确识别采用什么技术的能力,也是架构师所要具备的能力之一。考虑的主要

因素也是长期的成本和收益。

标签:架构,漫谈,笔记,问题,切分,解决,架构师
From: https://www.cnblogs.com/wjingbo/p/17135338.html

相关文章

  • 大规模 IoT 边缘容器集群管理的几种架构-0-边缘容器及架构简介
    ......
  • 大规模 IoT 边缘容器集群管理的几种架构-0-边缘容器及架构简介
    ......
  • 操作系统学习笔记总纲
    操作系统学习笔记目录第1章计算机系统概述1.1操作系统的基本概念1.1.1操作系统的概念1.1.2操作系统的特征1.1.3操作系统的目标和功能1.2操作......
  • Gin笔记1
    gin.Default():返回Gin的typeEnginestruct{...},里面包含RouterGroup,相当于创建一个路由Handlers,可以后期绑定各类的路由规则和函数、中间件等router.GET(…){…}:创建不......
  • 架构漫谈读后感
     在软件发展的初期是没有架构而言的。从最早的汇编语言到过程语言,他们处理的是一个个任务,为此编制了一个个的函数来执行对应的任务。这时候的软件编程语言还是过程语言,所......
  • 【笔记本推荐】【游戏本推荐】【办公本推荐】【设计本推荐】
    (注意:建议在旗舰店、官方旗舰店、官网购买)一、游戏本设计本、办公本推荐如下:华为品牌:(全球第一大电信设备商)1万多:HUAWEIMateBookXPro2022款14.2英寸11代酷睿i716GB......
  • 架构漫谈读后感
          一直以来,我们耳边就有人谈论各种架构,比如说知识架构,社会架构,营养架构。在软件工程中,也有架构这么个概念,在了解架构以前,我一直停留在字面意思来,认为架构就是一......
  • 《分布式技术原理与算法解析》学习笔记Day16
    分布式计算模式:流水线计算机中的流水线技术是一种将每条指令拆分为多个步骤,多条指令的不同步骤重叠操作,从而实现几条指令并行处理的技术。分布式领域的流水线计算模式,参......
  • 架构漫谈
    今天阅读了王概凯的架构漫谈,下面我从以下几点来表达一下自己的认识.     第一节讲的是什么是架构,在文中,他首先列举了Wikepadia上的定义。然后他从早期人们为了生......
  • 阅读笔记——架构漫谈
    在第一章王概凯先生就为我们阐述了架构的定义:我个人理解的架构就是将一件事儿分切成小块的问题,然后再进行解决。根据要解决的问题,对目标系统的边界进行界定并分配角色......