今天刚刚读完《架构之美》,留下一些记录,以备将来温习。
原版:
http://www.amazon.com/Beautiful-Architecture-Leading-Thinkers-Software/dp/059651798X
我读的是中译本:
http://product.dangdang.com/product.aspx?product_id=20733672&ref=search-1-pub
O'Reilly的编辑找来了各个领域的专家,每位专家撰写一章,介绍了各自参与的一个系统的架构设计,拼在一起就攒成了这本书。
第一章的总纲部分给出了架构设计的一些关注点,这章写的还不错,不过务虚的原则总是会比较容易让人觉得有道理并找到共鸣。后面就是各位专家开始介绍自己的经验。范例系统覆盖的范围很广,从嵌入式应用,到社交网络,企业应用,pc模拟器,虚拟化技术,运行时虚拟机,硬件架构一直到编程语言,通读一遍比较长见识。不过我比较失望的是没能从这些专家的介绍中得到如何应用总纲中阐述的那些原则的具体指导。
印象比较深的几章:
3. Darkstar 项目,为大型网游提供架构基础,读完了基本上明白了这个项目要做什么,整体的结构是什么样子以及为什么要这样做。
6.Facebook 项目,因为Facebook名气比较大,所以这章读的比较认真。这章确实写的不错,把Facebook怎样在可控的前提下把第三方应用嵌入自己网站这件事讲得比较明白。
9.JPC,用JAVA实现的X86模拟器,对这个项目印象比较深,觉得很牛,而且网上有看得见摸得着的sample.
10. Jikes RVM 一个基于JVM的VM,这章印象深刻的原因是太阳春白雪了,完全不明白这个项目的意义,他们在做什么,以及怎么做的,感觉这个项目离自己的知识水平距离比较远。不过这章的作者就不能写的直白朴素一点呢。
14.重读经典,我本来以为是经典书籍回顾,没想到大部分篇幅在讲smalltalk,语言也是一种架构,不过我对smalltalk完全不熟悉,也没有体会到作者想表达出来的美。
总的来说读完并没有醍醐灌顶的感觉。这本书离经典的距离还很远,宽容一些这可以算是一本好书。想说一下翻译,这本书内容覆盖的范围太广,有些东西很专业,交给一个人来翻译要求有些高。也许因为这个原因本书的翻译质量说不上上乘。出版社如果能找几位有对应专业背景的人来翻译对应章节的话也许效果会更好。
分享到:
相关推荐
在探讨如何掌握作文中间技巧时,我们不难发现这...通过充实的内容、生动的细节、真挚的情感、起伏的情节和紧扣主题的构思,作者能够构建出一个完整的文章架构,从而在读者心中留下深刻印象,有效传达自己的意图和思想。
一点儿也不,我写这本书的目的就是向你讲解并示范平常就可以用于解决各种各样问题的逆向工程技术。 不过我总是急于求成。也许你以前没有接触过软件逆向工程的概念,我在这里先简要介绍一下。 逆向工程和底层软件 在...
本例中的四个部分(第一部分至第四部分)就很好地体现了这一点。 - **第一部分**:可以用来介绍公司的基本情况,如成立时间、发展历程等。 - **第二部分**:可能涉及公司的主营业务或核心竞争力分析。 - **第三...
通过这段时间的实践,我不仅对公司的组织架构、业务范围有了清晰的认识,更是亲身体验了网络维修服务的全过程。在师傅的带领下,我从对公司机房管理的基本认识开始,逐步深入到更专业的网络硬件和软件知识。 在硬件...
论文模板-justnews6.0.1 插件:QAPress社交问答 v2.3.1-实训商业源码.zip
内容概要:本文介绍了基于Matlab的储能系统选址定容程序,主要采用了蒙特卡洛随机算法进行优化配置。文中详细解释了蒙特卡洛算法的工作原理,即通过大量随机抽样来评估不同配置方式下储能系统的性能,从而确定最优配置。此外,还引入了非粒子群算法进一步优化配置效果。程序每行代码均配有详细注释,便于初学者理解和学习。同时,提供了图形化的结果展示,使得结果更为直观。最后,附带相关文献供深入研究。 适合人群:对储能系统优化感兴趣的科研人员、工程技术人员及希望学习Matlab编程的学生。 使用场景及目标:适用于需要解决储能系统选址定容问题的研究项目或工程项目,帮助用户找到最佳配置方案,提高储能效率。 其他说明:程序稳定可靠,所有步骤都有详尽说明,非常适合零基础的学习者入门。
工程项目管理中风险防控签证管理及反索赔.ppt
oppo s9h s9i固件 10.508
基于FPGA的RWA转RGB视频格式转换源码verilog,这个 Verilog 代码实现了一个基本的 RAW 到 RGB 转换器,适用于 FPGA 实现。主要功能包括:参数化设计:支持配置图像尺寸、位深度和 Bayer 模式,Bayer 模式处理:支持 RGGB、BGGR 等常见 Bayer 模式,双线性插值算法:使用邻域像素进行颜色插值,行缓存机制:使用 3 行缓存实现 2x2 邻域访问,边界处理:处理图像边缘像素的插值问题,完整测试平台:提供测试序列和基本验证逻辑
曹依蕊-毕业论文.pdf
实训商业源码-汽修汽配制造类网站源码-毕业设计.zip
计算机系统
内容概要:本文介绍了基于STM32的BMS电池管理系统,重点讲解了其源代码和官方参考原理图。STM32因高性能、低功耗被广泛应用于BMS系统中,能够实时监控电池的关键参数,确保电池的安全高效运行。文中详细解读了官方提供的参考原理图,解释了电路连接和信号传递关系。此外,引入了实时操作系统uCos,增强了任务调度和资源管理能力,使BMS系统对电池状态的监测和控制更为迅速准确。源代码规范且注释详尽,便于理解和移植。文中还穿插了多个代码片段,帮助理解系统运行原理,如通过ADC模块读取电压值并实现实时更新和显示,以及合理分配任务优先级确保电池安全充放电。 适合人群:电子工程专业学生、嵌入式系统开发工程师、从事电池管理系统相关工作的技术人员。 使用场景及目标:①学习STM32在BMS系统中的应用;②掌握实时操作系统uCos的任务调度和资源管理;③理解BMS系统的硬件设计和软件编程;④提高代码移植能力和系统优化技巧。 其他说明:本文不仅适用于初学者入门,也适合有经验的开发者进行深入研究和技术提升。通过学习本文,读者可以在电动汽车、储能系统等领域中更好地应用和发展BMS技术。
啤酒厂自动化检测仪表内部培训教材.ppt
实训商业源码-社区授权系统-毕业设计.zip
实训商业源码-今日头条-毕业设计.zip
我国主要河流、湖泊矢量边界数据集,包括一级、二级、三级、四级、五级流域和河流数据; 湖泊数据; 数据均为shp格式,可以直接使用主流GIS软甲加载,可用于数据分析、制图等用途。
河北08安装-第十册-自动化控制仪表安装工程.doc
内容概要:本文介绍了如何利用Kinect V2传感器和机械臂系统,结合上位机(基于VS2019和Qt5的C++编程)和下位机(STM32微控制器),实现目标抓取的任务。具体步骤包括:从Kinect V2获取深度数据并进行图像处理,计算目标位置,进行手眼标定,通过串口通信将逆运动学结果传送到下位机,最后由STM32控制机械臂完成抓取动作。文中详细描述了各个模块的具体实现方法及其代码片段。 适合人群:对机器人技术和嵌入式系统有一定了解的研发人员和技术爱好者。 使用场景及目标:适用于需要实现自动化目标抓取系统的工业应用场合,如智能仓储、生产线自动化等。目标是提高生产效率和精度,减少人工干预。 其他说明:文中提供的代码和算法可以根据实际需求进行修改优化,以适应不同的应用场景。同时,附带的实验结果显示了系统的可行性和有效性。
内容概要:本文探讨了分布式电源(DG)接入对9节点配电网节点电压的影响。通过构建9节点配电网模型,设置分布式电源的容量并在特定节点接入,利用Matlab进行潮流计算,最终绘制电压波形图,展示了DG接入前后各节点电压变化情况。研究表明,DG的接入显著影响配电网的电压分布,特别是在高渗透率情况下,可能导致某些节点电压升高或降低。 适合人群:电力系统研究人员、电气工程学生以及从事智能电网和分布式发电研究的专业人士。 使用场景及目标:适用于评估分布式电源接入对配电网稳定性的影响,帮助优化DG配置,确保电网安全稳定运行。此外,还可用于教学演示,使学生更好地理解DG的工作机制及其对电网的影响。 其他说明:文中提供的Matlab代码为简化版本,实际应用时需要根据具体情况进行调整和完善。