读《架构漫谈》的一些感想

  在阅读王概凯的《架构漫谈》,一共9篇。读之前以为的架构:架构啊,应该就是像想要盖房子一样,用木头搭起来的一个框架吧。听这名字,架构架构,多像“构造的架子”。读之后:我是谁?我在哪?架构能吃吗?

  虽然上面的描述方法采用了夸张的修辞手法,但真实情况确实和夸张后的情况相差无几——我是真的没有读懂理解王概凯写的9篇《架构漫谈》。虽然我大可以大片大片的“引用”其中的内容,但是那样就不是我写的博客了。我一向认为既然要抄,就要全篇搬过来,但可惜《架构漫谈》没告诉人们“未经许可,随意转载”,所以我只好选择第二条路,捡自己有些明白的内容说(虽然有时候理解不代表能讲述出来)。

  本课程全名叫做软件体系结构,我曾一度认为“软件体系结构”和“软件架构”的共同点只是“软件”和“构”。然后我就被百度噼里啪啦爆锤了一顿:二者英文名都叫做“software architecture”;二者在IEEE中的定义是相同的:一个系统的基础组织,包含各个构件、构件互相之间与环境的关系,还有指导其设计和演化的原则;“软件体系结构”一词多用于学术研究领域使用,而“软件架构”多用于工程实践领域。有篇博客比较详细的说明了二者的区别,值得一看(https://blog.csdn.net/pmlthy/article/details/1564436)。

  有些跑题,回到《架构漫谈》中来。“软件架构”的定义众说纷纭,所以目标先放到“架构”上来:架构是规划、设计、构建的过程及最终成果。根据架构的定义,架构似乎既可以是过程,又可以是成果,这样的释义似乎有些“暧昧”。所以我们需要明白架构是如何产生的。在人类发展的过程中,由于人类单个能力的局限性和对目标(生活,工作等)的更高的要求,迫使人类之间产生互动、沟通和合作,这样就产生了架构。

  以上,全部都是总结了《架构漫谈》中的话得到的结论。但于我而言,我依然没有弄明白架构的意思。但好在得益于百度的强大功能,我通过查阅资料,结合《架构漫谈》,得到了我个人比较能接受理解的软件架构含义(土话版):一个软件系统可以根据某种规则(功能、模块、子系统)进行切分,切出来的部分之间的联系是有效的,而他们的合并,则可以满足系统的目标要求,而架构,则是指挥他们或独立工作或协作工作,最终完成系统目标的顶层设计。

  接下来,《架构漫谈》说到了架构师的作用,在一般的XX师中,比如老师,作用是解决问题(笑)。但《架构漫谈》的作者却提出,架构师的作用不是解决问题,而是找到问题。并且提出了一句很有意思的话:……如果是真正的问题的话,提问题过来的人肯定都能够自己解决了,不需要找架构师……这让我的三观受到了极大地冲击——我要是能自己解决问题,还用得着问别人吗?但接着读下去,我思考之后认为,作者首先将“真正的问题都不是问题”作为前提,那么就得到了上面那句话,既然问到架构师头上了,那么就说明这个“问题”不是是一个“真正的问题”,所以就引出了作者的结论:提出问题的人没有提出真正的问题,而架构师的作用,就是“识别出真正的问题”然后交给提出问题的人,让他自己解决真正的问题。

  以上,就是我读《架构漫谈》中的一部分问题和联想。

扩展阅读:

  《从零开始学架构》 作者:李运华

  软件体系结构与软件架构解析 作者:pmlthy

原文地址:https://www.cnblogs.com/YXSZ/p/12332410.html

时间: 2024-08-03 03:13:32

读《架构漫谈》的一些感想的相关文章

读<<大数据时代>>的一些感想

第一次听说<<大数据时代>>这本书,是在网上看到的央视搞的一个2013中国好书评选活动推荐的25本"中国好书"的榜单中看到的.然后迅速上豆瓣上查看了一下对该书的评价,一看非常高,再加上央视的推荐是从2013在中国出版的40册图书中选出25本,可以说是精华了.果断定了一本,花了三天时间读完了.   大数据这个名词或者说概念从被提出开始,经过短短几年的发展,已经传的沸沸扬扬了,经常见诸媒体上.好像哪家媒体的科技板块每天不弄一些这样的新闻条,它就显得不够档次一样.这是

转文峰——读《大数据时代》有感

我在大数据领域已经工作五年多了,可如果一个外行朋友让我给他解释一 下什么是大数据,我还真不好讲.我能说就是海量数据的格式化.传输.存储.查询.展示吗?还是过于抽象.我能说数据量大就叫大数据吗?其实也不一定,一台 机器上的传感器收集到的数据可能每天都有几个TB,但也仅仅是监控了一个机器的状态.而全国各个市一天的苹果价格,可能也只是几MB大小,但它就是一个大 数据的例子. 这本书的观点很鲜明.首先是样本等于总体.在大数据时代以前,如果想要了解某个市场的情况,一般是采用抽样调查的方式,这种方式难免出现

《大数据时代》读后小结

"云计算","大数据"的概念风起云涌,一时貌似所有的人都成了"大数据专家",多多少少都能侃两句,为了适应时代的发展,抽时间看了看<大数据时代>,简单谈一下自己的理解. 大数据的核心就是预测,通过历史数据预测未来.它通常被视为人工智能的一部分,或者更确切地说,被视为一种机器学习.然而对大数据的分析方式与人们的传统思维还是有很大转变的. 第一个转变就是在大数据时代,我们可以分析更多的数据,有时候甚至可以处理和某个特别现象有关的所有数据,而

读《大数据时代》

周末两天加上今天的时间,算是仔细的读完了<大数据时代>这本书,这本书既是我导师推荐给我们的大数据书籍,也是我第一次尝试一口气读完一本书. 对于这本书,作者的牛逼之处就不用我在这里废口水了.这里主要说说的体会. 现在谈论大数据的人真的很多,但是能全面的讲述大数据的人我个人的感觉是不多的.作者从非技术这个角度,从思维.价值.隐私.管理这些角度来细致的讲述大数据,这点我觉得是值得我们学习的,而且书中例子的结合,也很能看出作者的功力. 结合产品来谈数据的话,我个人觉得产品的设计是可以融入数据元素的,从

LinkedIn高级分析师王益:大数据时代的理想主义和现实主义(图灵访谈)

转自:http://www.ituring.com.cn/article/75445 王益,LinkedIn高级分析师.他曾在腾讯担任广告算法和策略的技术总监,在此期间他发明了并行机器学习系统“孔雀”,它可以从数十亿的用户行为或文本数据中学习到上百万的潜在主题,该系统被应用在腾讯可计算广告业务中.在此之前,他在Google担任软件工程师,并开发了一个分布式机器学习工具,这个工具让他获得了2008年的“Google APAC 创新奖”.王益曾在清华大学和香港城市大学学习,并取得了清华大学机器学习和

决胜大数据时代:Hadoop&amp;Yarn&amp;Spark企业级最佳实践(8天完整版脱产式培训版本)

Hadoop.Yarn.Spark是企业构建生产环境下大数据中心的关键技术,也是大数据处理的核心技术,是每个云计算大数据工程师必修课. 课程简介 大数据时代的精髓技术在于Hadoop.Yarn.Spark,是大数据时代公司和个人必须掌握和使用的核心内容. Hadoop.Yarn.Spark是Yahoo!.阿里淘宝等公司公认的大数据时代的三大核心技术,是大数据处理的灵魂,是云计算大数据时代的技术命脉之所在,以Hadoop.Yarn.Spark为基石构建起来云计算大数据中心广泛运行于Yahoo!.阿

《大数据时代》读书笔记

大数据开启了一次重大的时代转型.就像望远镜让我们能够感受宇宙,显微镜让我们能够 观测微生物一样,大数据正在改变我们的生活以及理解世界的方式,成为新发明和新服务的源 泉,而更多的改变正蓄势待发-- 大数据的精髓在于我们分析信息时的三个转变,这些转变将改变我们理解和组建社会的方法. 第一个转变就是,在大数据时代,我们可以分析更多的数据,有时候甚至可以处理和第一个转变就是,在大数据时代,我们可以分析更多的数据,有时候甚至可以处理和 某个特别现象相关的所有数据,而不再依赖于随机采样. 某个特别现象相关的

第29本:《大数据时代》

第29本:<大数据时代> 最近大数据火了,还经常听到Hadoop和Mapreduce,我经常勘探地震资料处 理后的地震数据体,动不动几十个G,算不算大数据?好像与现在说的这个大数据概念相差太远,就一直想了解一下这个大数据到底是什么含义.从SUN那里借来 <大数据时代>读了一读,明白了不少基本概念和示例,与我们的数GB的地震数据体不是一回事,想把大数据应用于石油行业,看来还得琢磨琢磨. <大数据时代>这本书的章节划分非常清晰,主要讲了思维.商业和管理方面的变革,每一章有一

大数据时代的技术hive:hive介绍

我最近研究了hive的相关技术,有点心得,这里和大家分享下. 首先我们要知道hive到底是做什么的.下面这几段文字很好的描述了hive的特性: 1.hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供完整的sql查询功能,可以将sql语句转换为MapReduce任务进行运行.其优点是学习成本低,可以通过类SQL语句快速实现简单的MapReduce统计,不必开发专门的MapReduce应用,十分适合数据仓库的统计分析. 2.Hive是建立在 Hadoop

移动大数据时代最IN编程语言必读书单

移动大数据时代最IN编程语言必读书单 这是一个快速更迭,快鱼吃慢鱼的时代.从IT 时代演变成 DT 时代,再到现在的智能时代.急速革新的各种新技术.新工具.新平台,需要程序员掌握良好的编程思想和学习方法,不断学习新技术.补充新知识,才能努力跟上时代的步伐,找到自我实现的际遇.读书依然是我们获取知识的最方便和有效的途径之一.既要读经典,也要读新书,前者让你沉淀,发现正确的方法,后者让你紧跟前沿,掌握最新的技术.可你是不是担心,不能找到真正值得读的新书而浪费时间?在此,我们汇总了当下最In的编程语言