《架构之美》阅读笔记一

沙漠绿鹰 沙漠绿鹰     2022-08-22     625

关键词:

     对于我们学习软件工程的学生来说,怎样来设计软件是一个非常重要的问题,通过阅读《架构之美》这本书,了解到了什么是架构,什么样的架构能够使软件更加的合理。

      架构是系统设计的一部分,它突出了某些细节,并通过抽象省略掉了另一些细节。软件系统的架构包括行为上的和结构上的。外部行为描述展示了软件如何与用户、其他设备和外部设备进行交互,也就是需求。结构描述展示了软件如何被划分为多个部分,以及这些部分的关系。

      在大多数人的谈论中,架构是一个目标产物,而作为架构师的责任就是去生产它。所以无论如何,架构是可以“做”出来的,而且也应该有一些“做”的方法、技术、技巧。有人问过架构的最主要产出是什么?书中的答案是“图”。这里面有两层含义:一层含义是如同建筑师描绘的蓝图一样,用于引导实施者;另一层含义是架构师头脑中清晰的目标系统。如果架构师头脑中没有系统清晰的图像,他是没有办法把它画出来的。

      架构的设计受到许多因素的制约,架构是好是坏并没有统一的标准。这取决于人们对软件的需求、软件被构建和运行的环境,以及软件团队本身的特点等等因素。评价软件好坏有很多指标,例如性能、安全、可伸展性等等。一般来说,这些指标是很难全部满足的,试图改进其中一个往往会对其他指标产生负面影响。所以从某种意义上来说,软件架构是折中的游戏。对于一组功能需求和品质需求,没有唯一的正确架构。

      架构这个过程,是架构师洞见系统内在结构、规律、原则和逻辑的过程。真正的架构师是可以将自己放在系统中去的(例如作为系统中的任何一个角色),只有清晰地理解系统,才能简洁地描述它。而当架构师拿出了他所描述的“作品”的时候,架构这一过程就已经结束了。

      我们对于架构也许没有必要一定掌握架构,但我们一定要了解架构。

架构之美阅读笔记之三

      今天我学习的是架构之美的第三章——伸缩性架构设计。这一张也是涉及到了第二部分,企业级用用架构。首先我们要引出,伸缩性架构设计,也就是为什么要伸缩性的架构。主要原因是,我们在设计... 查看详情

《架构之美》阅读笔记06

一、阅读内容第五部分第十三章软件架构:面向对象与面向函数第十四章重读经典二、笔记总结(1)面向对象与面向函数函数式编程能够更好的实现模块化设计。在面向对象的编程方式出现之后,我们发现面向对象的程序设计... 查看详情

《架构之美》阅读笔记05

...势第十二章当集市开始构建教堂二、笔记总结(1)Emacs的架构Emacs架构采用的是在交互式应用程序中应用广泛的模型-视图-控制器模式。在这个模式中,模型是程序所操作数据的底层描述,视图则是向用户展示数据的方法,而控... 查看详情

架构之美阅读笔记06

...文件。Emacs有三种基本的对象:帧、窗口、缓冲区。Emacs架构所采用的是在交互应用程序中应用广泛的模型-视图-控制 查看详情

架构之美阅读笔记01

   初识架构,什么是架构,架构美在何处?不同领域的设计师对架构的理解大相径庭;软件架构师对一个好的架构的要求诸如对用户友好,响应及时,易维护,没有重大错误,易安装,可靠性高,可通过标准的方式同... 查看详情

《架构之美》阅读笔记四

  今天我阅读了《架构之美》第五章面向资源的架构在web中,这一章讲到现在我们过分强调了软件和服务,而却忽视了数据,现在大多数组织机构更容易在web上找到信息,而不是在他们自己的系统中。web在很大程度上是因为它... 查看详情

《架构之美》阅读笔记02

第二部分(企业级应用架构):      第3章【伸缩性架构设计】:      从本部分开始,本书就开始介绍不同的架构设计。本章介绍的是伸缩型架构设计,使用的是Darkstar项目来举例。Dar... 查看详情

架构之美阅读笔记02

  架构是浪费空间的艺术。需要架构师经过缜密的谋划,精心的布置,才能创造出美的艺术。通过阅读本章中对两个“软件城市”的描述,加深了对架构重要性的认识,了解了一些如何构建出美的构架的方法。  经... 查看详情

架构之美阅读笔记之五

...         今天我学习的是架构之美的第五章——面向资源的架构:在web中。这一章,作者讲述说明了,企业中聚焦信息的架构展示了雨web一样的特点:伸缩性,弹性,架构歉意策略,信息驱动和访... 查看详情

《架构之美》(阅读笔记1)

架构真的很美!!!什么是架构?浅薄理解,它组件与组件的关系,架构师将其表述出来.深层理解,它由一组结构组成,这些结构的设计目的是让架构师,利益相关者看到他们的关注点是如何得到满足的。美丽架构的核心在于概念完整... 查看详情

《架构之美》阅读笔记二

   架构是系统设计的一部分,它突出了某些细节,并通过抽象省略掉了另一些细节。软件系统的架构包括行为上的和结构上的。外部行为描述展示了软件如何与用户、其他设备和外部设备进行交互,也就是需求。结构... 查看详情

架构之美阅读笔记06

...去访问一个数据仓库。数据推动了用户喜欢的产品,所以架构师围绕数据创建了其余的传统“n层”软件站。Facebook即是一个围绕数据建立架构的例子。“Facebook社会关系网站”在概念上是一个标准的“n层”栈,用户的请求会从Fac... 查看详情

《架构之美》阅读笔记五

   一个好的架构的形成不仅是架构师的功劳,还有团队的集体合作,主要因素:确实进行有意为之的前端设计;设计者有很好的素质和经验;在开发过程中,保持清晰的设计观点;授权团队负责软件的整体设计;不要... 查看详情

架构之美阅读笔记六

   一个好的架构的形成不仅是架构师的功劳,还有团队的集体合作,主要因素:确实进行有意为之的前端设计;设计者有很好的素质和经验;在开发过程中,保持清晰的设计观点;授权团队负责软件的整体设计;不要害怕... 查看详情

架构之美阅读笔记四

...就确定了问题空间。接下来我们要了解事实,重要问题和架构的关注点。确定工作流也是一个极为重要的步骤,来自于我们对于如何划分系统的考虑。  系统架构常见的关注点有,功能性:产品向特的用户提供哪些功能?可变... 查看详情

架构之美阅读笔记五

...二章展示了冲刺和统计评审这样的社区过程如何帮助软件架构从简单的骨架演变为美丽的系统。  第十一章为我们展示了GNUEmacs的故事:滋长的特性是其优势。首先我认识到了Emacs是什么。它和我们经常使用的其他文本编辑器... 查看详情

寒假阅读笔记十

架构之美——系统架构(四)     今天,我阅读的是《架构之美》的第十章,题目为元循环虚拟机的力量:JikesRVM,其实说实话,看到这个题目我的头就有点大了,以前从来没有听说过这个名词,究竟什么是Jike... 查看详情

假期阅读笔记八

架构之美——系统架构(二)     时间很快,转眼假期过去了一半,理所当然《架构之美》也已经阅读了一半。直到今天,我才明白“不积跬步,无以至千里;不积小流,无以成江海!”的真正内涵,只要每天... 查看详情