架构之美第二章-美丽架构的含义

       古人形容美女之美:“⋯⋯增之一分则太长,减之一分则太短⋯⋯”,深刻地揭示了“恰到好处”的美丽含义。当我拿到《架构之美》书稿时,我发现美丽的含义如此相似。


       美丽至简。美丽的架构应尽可能简单,但不要过于简单。书中通过多种例子表达了这个最基本的道理。我见过很多大型的软件架构,从大型的电信网络管理系统,到大规模应用的互联网架构,以及企业级的ERP软件,系统总是遵循从无到有,从简单到复杂,再

到简单这样的过程。最终,支撑这些大型系统稳定可靠运行的就是这个最基本的道理。


      美丽的架构应尽可能精益,并且是演进式发展的。当你架构一个亿万人同时在线的大规模网站系统的时候,你无法从一开始就提供最完善的解决方案,它应该是随着用户的增长而可扩展的。精益的思想让你避免了过度设计,也使架构不断演进,趋于完美。书中
从企业级应用架构、用户级应用架构等多个角度提供了相应的解决方案,对于架构师无
不是一顿美味的大餐。


      我发现,架构之美并不简单,它没有定法。但是,它将为架构师们提供一把进入“美丽架构艺术馆”大门的钥匙。拿起它,您将会开启这扇大门!
  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
序   前言 5   第一部分 论架构   第1章 架构概述 13   1.1 简介 13   1.2 创建软件架构 19   1.3 架构结构 23   1.4 好的架构 27   1.5 美丽架构 28   致谢 30   参考文献 31   第2章 两个系统的故事:现代软件神话 33   2.1 混乱大都市 34   2.2 设计之城 40   2.3 说明什么问题 47   2.4 轮到你了 48   参考文献 48   第二部分 企业级应用架构   第3章 伸缩性架构设计 51   3.1 简介 51   3.2 背景 52   3.3 架构 56   3.4 关于架构的思考 61   第4章 记忆留存 67   4.1 功能和约束 68   4.2 工作流 69   4.3 架构关注点 70   4.4 用户反应 90   4.5 结论 90   参考文献 90   第5章 面向资源的架构:在Web中 91   5.1 简介 91   5.2 传统的Web服务 92   5.3 Web 94   5.4 面向资源的架构 99   5.5 数据驱动的应用 102   5.6 应用面向资源的架构 103   5.7 结论 108   第6章 数据增长:Facebook平台的架构 109   6.1 简介 109   6.2 创建一个社会关系Web服务 114   6.3 创建社会关系数据查询服务 121   6.4 创建一个社会关系Web门户:FBML 129   6.5 系统的支持功能 142   6.6 总结 147   第三部分 系统架构   第7章 Xen和虚拟化之美 151   7.1 简介 151   7.2 Xenoservers 152   7.3 虚拟化的挑战 154   7.4 半虚拟化 155   7.5 Xen的变换形式 158   7.6 改变的硬件,改变的Xen 163   7.7 经验教训 165   7.8 延伸阅读 166   第8章 Guardian:一个容错操作系统环境 169   8.1 Tandem/16,将来所有的计算机都会像这样构建 170   8.2 硬件 170   8.3 物理布局 172   8.4 处理器架构 172   8.5 处理器间总线 178   8.6 输入/输出 178   8.7 进程结构 179   8.8 消息系统 179   8.9 文件系统 183   8.10 轶闻趣事 188   8.11 弊端 189   8.12 后继者 190   8.13 延伸阅读 191   第9章 JPC:一个纯Java的x86 PC模拟程序 193   9.1 简介 193   9.2 概念验证 195   9.3 PC架构 198   9.4 Java性能技巧 199   9.5 把4GB放入4GB:这不起作用 200   9.6 保护模式的危险 203   9.7 从事一项毫无成功希望的斗争 206   9.8 劫持JVM 210   9.9 终极灵活性 220   9.10 终极安全性 222   9.11 第二次做会更好 223   第10章 元循环虚拟机的力量:Jikes RVM 225   10.1 背景 225   10.2 与运行时环境相关的传言 227   10.3 Jikes RVM简史 229   10.4 一个自足执行的运行时自举 230   10.5 运行时组件 234   10.6 经验教训 246   参考文献 247   第四部分 最终用户应用架构   第11章 GNU Emacs:滋长的特性是其优势 251   11.1 使用中的Emacs 252   11.2 Emacs的架构 254   11.3 滋长的特性 260   11.4 另外两个架构 262   第12章 当集市开始构建教堂 267   12.1 简介 267   12.2 KDE项目的历史和组织结构 269   12.3 Akonadi 274   12.4 ThreadWeaver 289   第五部分 语言与架构   第13章 软件架构:面向对象与面向函数 299   13.1 概述 299   13.2 函数式示例 302   13.3 函数式解决方案的模块性评价 305   13.4 面向对象视图 313   13.5 面向对象模块性的评价和改进 319   13.6 代理:将操作封装到对象中 323   致谢 328   参考文献 328   第14章 重读经典 331   14.1 所有东西都是对象 335   14.2 类型是隐式定义的 342   14.3 问题 348   14.4 砖块和灰浆建筑架构 352
本书围绕5个主题领域来组织本书的内容:概述、企业应用、系统、最终用户应用和编程语言。本书让最优秀的设计师和架构师来描述他们选择的软件架构,剥开架构的各层,展示他们如何让软件做到实现功能、可靠、易用、高效率、可维护、可移植和优雅。 目录 序 前言 5 第一部分 论架构 第1章 架构概述  13 1.1 简介  13 1.2 创建软件架构  19 1.3 架构结构  23 1.4 好的架构  27 1.5 美丽架构  28 致谢  30 参考文献  31 第2章 两个系统的故事:现代软件神话  33 2.1 混乱大都市  34 2.2 设计之城  40 2.3 说明什么问题  47 2.4 轮到你了  48 参考文献  48 第二部分 企业级应用架构 第3章 伸缩性架构设计  51 3.1 简介  51 3.2 背景  52 3.3 架构  56 3.4 关于架构的思考  61 第4章 记忆留存  67 4.1 功能和约束  68 4.2 工作流 69 4.3 架构关注点  70 4.4 用户反应  90 4.5 结论  90 参考文献  90 第5章 面向资源的架构:在Web中  91 5.1 简介  91 5.2 传统的Web服务  92 5.3 Web  94 5.4 面向资源的架构  99 5.5 数据驱动的应用  102 5.6 应用面向资源的架构  103 5.7 结论  108 第6章 数据增长:Facebook平台的架构  109 6.1 简介  109 6.2 创建一个社会关系Web服务  114 6.3 创建社会关系数据查询服务  121 6.4 创建一个社会关系Web门户:FBML  129 6.5 系统的支持功能  142 6.6 总结  147 第三部分 系统架构 第7章 Xen和虚拟化之美  151 7.1 简介  151 7.2 Xenoservers  152 7.3 虚拟化的挑战  154 7.4 半虚拟化  155 7.5 Xen的变换形式  158 7.6 改变的硬件,改变的Xen  163 7.7 经验教训  165 7.8 延伸阅读  166 第8章 Guardian:一个容错操作系统环境  169 8.1 Tandem/16,将来所有的计算机都会像这样构建 170 8.2 硬件  170 8.3 物理布局  172 8.4 处理器架构  172 8.5 处理器间总线  178 8.6 输入/输出  178 8.7 进程结构  179 8.8 消息系统  179 8.9 文件系统  183 8.10 轶闻趣事  188 8.11 弊端  189 8.12 后继者  190 8.13 延伸阅读  191 第9章 JPC:一个纯Java的x86 PC模拟程序  193 9.1 简介  193 9.2 概念验证  195 9.3 PC架构  198 9.4 Java性能技巧  199 9.5 把4GB放入4GB:这不起作用  200 9.6 保护模式的危险  203 9.7 从事一项毫无成功希望的斗争  206 9.8 劫持JVM  210 9.9 终极灵活性  220 9.10 终极安全性  222 9.11 第二次做会更好  223 第10章 元循环虚拟机的力量:Jikes RVM  225 10.1 背景  225 10.2 与运行时环境相关的传言  227 10.3 Jikes RVM简史  229 10.4 一个自足执行的运行时自举  230 10.5 运行时组件  234 10.6 经验教训  246 参考文献  247 第四部分 最终用户应用架构 第11章 GNU Emacs:滋长的特性是其优势  251 11.1 使用中的Emacs  252 11.2 Emacs的架构  254 11.3 滋长的特性  260 11.4 另外两个架构  262 第12章 当集市开始构建教堂  267 12.1 简介  267 12.2 KDE项目的历史和组织结构  269 12.3 Akonadi  274 12.4 ThreadWeaver  289 第五部分 语言与架构 第13章 软件架构:面向对象与面向函数  299 13.1 概述  299 13.2 函数式示例  302 13.3 函数式解决方案的模块性评价  305 13.4 面向对象视图  313 13.5 面向对象模块性的评价和改进  319 13.6 代理:将操作封装到对象中  323 致谢 328 参考文献 328 第14章 重读经典  331 14.1 所有东西都是对象  335 14.2 类型是隐式定义的  342 14.3 问题  348 14.4 砖块和灰浆建筑架构  352 参考资料  359 跋 漂亮地构建 363
第一部分 论架构 第1章 架构概述  13 1.1 简介  13 1.2 创建软件架构  19 1.3 架构结构  23 1.4 好的架构  27 1.5 美丽架构  28 致谢  30 参考文献  31 第2章 两个系统的故事:现代软件神话  33 2.1 混乱大都市  34 2.2 设计之城  40 2.3 说明什么问题  47 2.4 轮到你了  48 参考文献  48 第二部分 企业级应用架构 第3章 伸缩性架构设计  51 3.1 简介  51 3.2 背景  52 3.3 架构  56 3.4 关于架构的思考  61 第4章 记忆留存  67 4.1 功能和约束  68 4.2 工作流 69 4.3 架构关注点  70 4.4 用户反应  90 4.5 结论  90 参考文献  90 第5章 面向资源的架构:在Web中  91 5.1 简介  91 5.2 传统的Web服务  92 5.3 Web  94 5.4 面向资源的架构  99 5.5 数据驱动的应用  102 5.6 应用面向资源的架构  103 5.7 结论  108 第6章 数据增长:Facebook平台的架构  109 6.1 简介  109 6.2 创建一个社会关系Web服务  114 6.3 创建社会关系数据查询服务  121 6.4 创建一个社会关系Web门户:FBML  129 6.5 系统的支持功能  142 6.6 总结  147 第三部分 系统架构 第7章 Xen和虚拟化之美  151 7.1 简介  151 7.2 Xenoservers  152 7.3 虚拟化的挑战  154 7.4 半虚拟化  155 7.5 Xen的变换形式  158 7.6 改变的硬件,改变的Xen  163 7.7 经验教训  165 7.8 延伸阅读  166 第8章 Guardian:一个容错操作系统环境  169 8.1 Tandem/16,将来所有的计算机都会像这样构建 170 8.2 硬件  170 8.3 物理布局  172 8.4 处理器架构  172 8.5 处理器间总线  178 8.6 输入/输出  178 8.7 进程结构  179 8.8 消息系统  179 8.9 文件系统  183 8.10 轶闻趣事  188 8.11 弊端  189 8.12 后继者  190 8.13 延伸阅读  191 第9章 JPC:一个纯Java的x86 PC模拟程序  193 9.1 简介  193 9.2 概念验证  195 9.3 PC架构  198 9.4 Java性能技巧  199 9.5 把4GB放入4GB:这不起作用  200 9.6 保护模式的危险  203 9.7 从事一项毫无成功希望的斗争  206 9.8 劫持JVM  210 9.9 终极灵活性  220 9.10 终极安全性  222 9.11 第二次做会更好  223 第10章 元循环虚拟机的力量:Jikes RVM  225 10.1 背景  225 10.2 与运行时环境相关的传言  227 10.3 Jikes RVM简史  229 10.4 一个自足执行的运行时自举  230 10.5 运行时组件  234 10.6 经验教训  246 参考文献  247 第四部分 最终用户应用架构 第11章 GNU Emacs:滋长的特性是其优势  251 11.1 使用中的Emacs  252 11.2 Emacs的架构  254 11.3 滋长的特性  260 11.4 另外两个架构  262 第12章 当集市开始构建教堂  267 12.1 简介  267 12.2 KDE项目的历史和组织结构  269 12.3 Akonadi  274 12.4 ThreadWeaver  289 第五部分 语言与架构 第13章 软件架构:面向对象与面向函数  299 13.1 概述  299 13.2 函数式示例  302 13.3 函数式解决方案的模块性评价  305 13.4 面向对象视图  313 13.5 面向对象模块性的评价和改进  319 13.6 代理:将操作封装到对象中  323 致谢 328 参考文献 328 第14章 重读经典  331 14.1 所有东西都是对象  335 14.2 类型是隐式定义的  342 14.3 问题  348 14.4 砖块和灰浆建筑架构  352 参考资料  359 跋 漂亮地构建 363
《嵌入式系统-硬件与软件架构架构之美》这本书是一本介绍嵌入式系统架构的精彩之作。嵌入式系统是指被嵌入到其他设备或系统中的计算机系统,它具有特定的功能和任务。硬件与软件架构是嵌入式系统实现的基础,它关系到系统的性能、资源利用率和稳定性。 首先,嵌入式系统的硬件架构是指系统硬件部分的设计和组织。硬件架构要考虑到系统的实时性、功耗和成本等因素。一种好的硬件架构可以提高系统的运行效率和响应速度,减少功耗,提高系统的可靠性和稳定性。而本书通过对硬件设计和组织的全面介绍,分析了各种硬件架构的优劣,帮助读者了解如何选择和设计适合嵌入式系统的硬件架构。 其次,嵌入式系统的软件架构是指系统中软件组件的设计和组织。软件架构要考虑到系统的可扩展性、可维护性和可重用性等方面。一个好的软件架构可以提高系统的灵活性和可靠性,降低软件开发的难度和成本。本书通过对软件设计原理和各种软件架构模式的深入讲解,帮助读者掌握嵌入式系统的软件设计和组织方法。 通过硬件与软件架构的完美结合,嵌入式系统可以充分发挥其特定的功能和任务。硬件架构提供了系统运行的基础,而软件架构则实现了系统的各种功能和任务。本书深入浅出地介绍了硬件与软件架构的原理和技术,结合实际案例分析,让读者能够理解嵌入式系统架构的美妙之处。 总之,《嵌入式系统-硬件与软件架构架构之美》这本书通过对硬件与软件架构的详细介绍,帮助读者深入了解嵌入式系统的组成和工作原理,掌握嵌入式系统的设计和开发方法。无论是从理论还是实践的角度,都能够让读者对嵌入式系统的架构有更深入的了解,并且能够应用到实际的项目中。这本书是嵌入式系统开发者和学习者的重要参考资料。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

星火燎猿

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值