首页 > 其他分享 >《架构漫谈》读后感

《架构漫谈》读后感

时间:2024-03-01 16:56:12浏览次数:31  
标签:秋千 读后感 架构 漫谈 系统 问题 切分 擅长

在上本学期软件体系架构课程之初,我阅读了王概凯老师的《架构漫谈》博客文章,王老师以很多生动的例子为我们讲解了什么是架构、认识概念、识别问题、架构切分、什么是软件、什么是架构师、从架构的角度来看如何写好代码以及技术、业务、架构三者的关系。

  首先,什么是架构?什么会有架构?在人刚刚学会生存时是没有架构,一个人包揽了所有的工作(可能也会有时间的架构,先做什么,后做什么),但是随着人类的繁衍,种群的扩大,人们学会使用火,学会制造工具,种植作物时,每个人的特点就会显现出来。,有的人擅长捕猎,有的人手巧,擅长制作工具,而有的人种庄稼很厉害,而且每个人的时间也是有限的,这时就出现了分工。人们将事情分开,由不同的人来完成不同的工作,最后进行交易,这实际上就是社会的架构。

  而架构产生的动力有以下几条:

  ①由人进行的工作(只有人做这个工作,人们才会想怎样对他进行改进优化,从而提高系统的质量)。

  ②每个人的能力有限,正如上面的例子所说,每个人擅长的东西不一样,如果让一个擅长制作工具的人去种庄稼,那他90%的可能要比擅长种庄稼的人花费的时间多,而且做得比如人家好,而让这个擅长种庄稼的人去制作工具,那他也没有擅长制作工具的人做得好。

  ③每个人的时间有限,比如一个人盖一幢房子需要2个月,而10个人可能10天就完成了,为了减少时间的投入,必然需要把工作分出去,让擅长该供工作的人完成。

  ④人对目标系统有更高的要求,还是房子的例子,如果人们对居住环境没有更高的要求,而只是要求能住人就行,那么我们现在可能还是居住在山洞中,因为不满足仅仅能住人,还要能做饭、能洗澡、能娱乐,所以出现了架构。

  综上,总结一下什么是架构,根据目标系统的要求划定系统边界,然后按照某种原则对问题进行划分、合并,最终解决问题的实践过程。架构实际上解决的是人的问题,

  划分问题的前提是我们应该能够识别问题,正确找出问题才能划定系统边界。

这则漫画主要是描述在实际制作秋千这个需求过程中,各个部门之间的理解配合及完成需求的差异。首先,产品经理没有听懂用户的需求,没有找的真正的问题,而是想当然应该这样做,而且想得过于简单没有站在用户的角度想。在架构中我们应先找到问题的主体,其次去找到真正的问题。因为问题的主体是问题的隐含边界,边界不确定下来,问题就是不确定的。一旦确定了主体,剩下的就是去搞明白主体有哪些问题。在这个秋千中,我们首先找到问题的主体是乘坐秋千的孩子,问题是想要一个秋千,秋千最起码能荡起来,而在图二中显然设计的不符合需求。所以,当我们在做架构时,首先确定这是谁的问题?问题是什么?当这两个问题解决好,我们就确定了系统的边界。

  确定系统边界后我们就应该进行划分,当一个系统比较复杂时,必然会进行切分,而切分的背后必然与利益有关,每个人都希望自己利益最大化。但是每个人的能力和时间都非常的有限,不可能什么都懂,所以自然需要舍掉一些自己不擅长的东西,用自己擅长的东西去换取别人擅长的东西。那么在一个系统中我们应如何进行切分呢?切分有以下几个原则:

  ①必须在连续时间内发生的一个活动不能进行切分。

  ②切分出来的部分的负责人,对这个部分的权利和义务必须是对等的。

  ③切分出来的部分,不应该超出一个自然人的负载。

  ④切分是内部活动,内部无任怎么切,对整个系统的外部应该是透明的。如果因为切分导致整个系统解决的问题发生了变化,那么这个变化不属于架构的活动。

  王概凯老师对于软件架构的知识讲解的详细生动,此处只写了一部分内容,接下来会进行进一步的学习,了解系统合成及架构师的工作等内容。

标签:秋千,读后感,架构,漫谈,系统,问题,切分,擅长
From: https://www.cnblogs.com/LvJinshuai/p/18047476

相关文章

  • 《架构漫谈:王概凯的技术思考》读后感
     今日王老师建议我看王概凯《架构漫谈》这本书。我觉得这是软工的圣经书籍,必读书目,在信息技术日新月异的今天,软件架构的重要性日益凸显。我深感其对于软件架构的独到见解和深刻思考。在此,我想分享一下我的读后感。王概凯作为一位资深的技术专家,对于软件架构有着丰富的实践经验......
  • 架构漫谈读后感
    这几天,读了一篇系列文章《架构漫谈》,其中通俗易懂的语言,风趣幽默的风格,形象明了的对比形式让我对架构有了更进一步的了解。首先,第一个问题什么是架构?架构,英文的定义是:Architecture(Latinarchitectura,fromtheGreekἀρχιτέκτων arkhitekton"architect",fromἀ......
  • 《架构杂谈》读后感
    今天阅读了王概凯的架构漫谈:     第一节讲的是什么是架构,在文中,他首先列举了Wikepadia上的定义。然后他从早期人们为了生命的延续分工合作来解释了为什么要产生架构?——把一个整体(完成人类生存的所有工作)切分成不同的部分(分工),由不同角色来完成这些分工,并通过建立不同部分......
  • 互联网架构点
    设计大型互联网网站的项目架构是一个复杂而关键的任务,它需要考虑性能、可伸缩性、可靠性、安全性以及维护性等多方面因素。大型互联网项目的架构设计应该根据具体的业务需求和规模来调整,同时要考虑未来的扩展性。这通常需要深入了解业务需求、技术趋势和最佳实践,以做出明智的决策......
  • 《构建之法》读后感
    构建之法读书心得体会读完《构建之法》第一章后,我对软件开发中的各种问题和挑战有了更深入的理解。这本书以其独特的视角,清晰的分析和实用的建议,使我重新审视了软件开发的过程和方法。以下是我的主要心得体会:1.**理解复杂性**:书中强调了理解复杂性在软件开发中的重要性。我们不......
  • 架构漫谈
    首先来看,什么是架构?为什么会出现架构?文章中是这么说的。在每个人都必须自己完成所有生活必须品的生产的时候,是没有架构的(当然在个人来讲,同一时刻只能做有限的事情,在时间上还是可能会产生架构的)。一旦产生的分工,就把所有的事情,切分成由不同角色的人来完成,最后再通过交易,使得每个个......
  • 云计算 - 阿里云最佳云上实践介绍 卓越架构
    相较传统IDC,云计算的快速迭代增加了维持良好架构的难度。云应用需关注稳定性、安全性、性能和成本。阿里云通过多年经验,发展了一套名为"AlibabaCloudWell-ArchitectedFramework"的优秀架构框架,以协助用户构建出色的云架构。关注【TechLeadCloud】,分享互联网架构、云服务技......
  • 《系统科学方法概论》——第五章读后感
    本章主要讲解了自组织系统方法。第一节就简单讲述了自组织系统理论的发展历程,为以下更深入的了解做了铺垫。第二节则讲述了耗散结构理论,它是由比利时自由大学教授普利高津提出的。普利高津在总结前入经验的基础上,根据系统与环境的关系,把系统分为三类:1、孤立系统。即与环境没有物......
  • 架构杂谈的读后感
    软件架构是指对软件系统整体结构和各组成部分之间关系的抽象描述。它不仅包括软件的结构和行为,还涉及到软件系统的演化、性能、灵活性、可维护性等方面。在软件开发过程中,良好的架构设计可以帮助开发人员更好地理解系统需求,提高开发效率,降低维护成本,并且使得系统更加稳定、可靠。......
  • 《程序是怎样跑起来的》第十一章读后感
    《程序是怎样跑起来的》第十一章深入探讨了并发与并行的概念及其在程序执行中的应用。本章首先解释了并发和并行的区别,指出并发是多个任务交替执行,而并行是多个任务同时执行。接着,介绍了常见的并发模型和并行计算的方法,如多线程、多进程和分布式计算等技术,并强调了如何避免并发和......