首页 > 其他分享 >架构漫谈

架构漫谈

时间:2024-03-01 19:55:18浏览次数:19  
标签:架构 漫谈 问题 切分 利益 解决 架构师

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

共分为九个部分:

1)  什么是架构?

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

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

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

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

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

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

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

5)  什么是软件

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

6)  架构要解决什么问题

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

7)  给架构师实权

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

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

 

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

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

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

标签:架构,漫谈,问题,切分,利益,解决,架构师
From: https://www.cnblogs.com/jingyk/p/18047825

相关文章

  • 漫谈架构
    很想写相关的内容,一直以来这方面的东西很杂,自己各方面都多多少少有些总结,但是没有系统的成文,始终觉得是个遗憾。这是这个系列的第一篇。本文说的架构,还并不是说的Tier层的架构,这里面不会涉及到分布式、缓存、网络结构等等的布局,而是集中在软件的内部,是代码层级的,考虑这点架构的点,......
  • 架构漫谈读后感
    今天按照老师的要求,看了架构漫谈1--9讲,觉得受益良多,以下是我得点点读后感:(一)什么是架构?   架构的英文是Architecture,从定义上看,架构好像是一个过程,也不是很清晰。下面从架构的缘由开始讲解一下:为了解决人类的延续的问题,自然而然就有男女群居出现,这个时候就出现了分工了,男性和......
  • 《架构漫谈》读后感
    今天阅读了王概凯的架构漫谈:     第一节讲的是什么是架构,在文中,他首先列举了Wikepadia上的定义。然后他从早期人们为了生命的延续分工合作来解释了为什么要产生架构?——把一个整体(完成人类生存的所有工作)切分成不同的部分(分工),由不同角色来完成这些分工,并通过建立不同部分......
  • 架构漫谈读后感
    (一)什么是架构?程序员   架构的英文是Architecture,从定义上看,架构好像是一个过程,也不是很清晰。下面从架构的原因开始讲解一下:为了解决人类的延续的问题,天然而然就有男女群居出现,这个时候就出现了分工了,男性和女性所作的事情就会有必定的分工,有了分工以后,人们的效率获得了巨大......
  • 漫谈架构
    架构漫谈系列(1)关注点分离 很想写相关的内容,一直以来这方面的东西很杂,自己各方面都多多少少有些总结,但是没有系统的成文,始终觉得是个遗憾。这是这个系列的第一篇。本文说的架构,还并不是说的Tier层的架构,这里面不会涉及到分布式、缓存、网络结构等等的布局,而是集中在软件的......
  • 读《架构漫谈》有感
    往往我们在学生阶段很少会用到架构这种东西,自然也不太清楚以及明白架构的具体概念,但是随着计算机行业的逐步发展,项目也随之越来越多,为了高效的完成这些项目架构便由此诞生了。架构漫谈是一本引人深思的书籍,作者通过生动的故事和精彩的案例,深入浅出地阐述了架构设计的重要性以及如......
  • 漫谈架构
    什么是架构?每当我们开发新的项目的时候都会新建一个解决方案,然后在解决方案中搭建N个项目。每个项目之间通过“引用”达到交互的功能,这个过程就可以称之架构,而架构最终的产物则是软件产品。不同的程序员在搭建架构的时候分两种情况:熟悉业务,根据业务进行架构、不熟悉业务,......
  • 《架构漫谈》读后感
    在深入阅读了《架构漫谈》之后,我对软件架构有了全新的认识和理解。曾经,我错误地将架构视为技术的堆砌,以为只要技术足够先进,架构就能自然而然地形成。然而,王概凯先生在这本书中的独到见解让我意识到,架构的真正魅力远不止于此。首先,优秀的架构并非一成不变,它需要根据业务需求的变化......
  • 《架构漫谈》读后感
    《架构漫谈》读后感阅读博客地址:王概凯(infoq.cn)对于软件架构,通过学习王概凯的老师的博客讲解,有了一些基础认识,并有了以下的见解与感受。1、什么是架构?首先什么是架构,每个专家都有自己的见解,结果发现,没有大家都认可的定义,每个人都在谈论它,但好像没有人真正了解他,架......
  • 架构漫谈读后感
    在深入研读《架构漫谈》之后,我对软件架构的理解与认知经历了前所未有的变革。这本书不仅是一本关于技术细节的指南,更是一部关于如何成为优秀架构师的精神启示录。它不仅丰富了我的知识体系,更重塑了我对软件架构的全方位理解。首先,王概凯在书中对架构的定义,让我对其有了更为深入的......