《架构之美》评注版序

简介: 《架构之美》评注版序

image.png

软件架构终归属于工程学的范畴,不能一概以“只可意会不可言传”来搪塞,因为架构知识是可以传递的,架构文档是可以共享的,最重要的是,架构自身是可以评审、验证与实现的。

Stephen J. Mellor在Beautiful Architecture序中,画龙点睛地勾勒出美丽架构的模样,即必须遵循的一些普遍原则,分别为:

  • One fact In one place(一处一事实)
  • Automatic propagation(自动传播)
  • Architecture includes construction(架构包含构建)
  • Minimize mechanisms(最小化机制)
  • Constuct engines(构建引擎)
  • O(G), the order of growth(O(G),增长的阶)
  • Resist entropy(抵制熵)

这些原则,其实就是架构师的智慧,没有足够深刻的理解与深入实践,是不可能给出如此言简意赅的架构建议的。按照我的理解,这些普适性原则其实就是在说明所谓美丽的架构,就是简单、一致、适应变化并能去除重复的架构。泄露天机的一句话还是Mellor所言——美丽的架构用更少的机制做更多的工作。这就是Beautiful Architecture一书不凡的开篇了。

若是一本平庸的书,必然会惧怕这样精彩绝伦的序,因为它愈发的美,就愈发能照映出正文的丑;它愈发的言之有物,又愈发会衬托出正文的空洞无味。 然而,若是内容是超乎寻常的精彩绝伦,这样的序就无异于锦上添花,珠联璧合了。通透点儿,就是齐活!这就好比一首歌曲的领唱者,倘若一开始就飙出高音,声入云霄。跟唱者没有点儿本事,恐怕就难以为继了;可要都是高手呢?那就真是一场音乐的盛宴了。

Beautiful Architecture合唱团荟萃了全球最为顶级的架构师、意见领袖,他们在这本书中唱出了架构思想、实践与原则的最强音。全书共分为五个主题:

  • On Architeture
  • Enterprise Application Architecture
  • Systems Architecture
  • End-User Application Architectures
  • Languages and Architecture

这些主题几乎覆盖了软件架构的方方面面,精选的每篇文章可谓字字珠玑,充满了写作者的真知灼见。开卷阅读,如与大师对话,聆听者必须凝神应对,稍不留神就可能遗漏那些重要而正确的意见,影响到对整篇文章的理解。整本书正文不足400页,然而每次阅读皆有新意,书的内容仿佛博尔赫斯笔下小径分叉的花园,花园虽小,景色却变幻多姿,路途虽短,距离却无穷无尽,咫尺天涯。

因此,作为本书的评注者,真可以说是战战兢兢如履薄冰。我的每句点评都尽力追求达到个人最大努力的完美,不求锦上添花,只求不得“狗尾续貂”之嫌。安全地说,这些评注不过是我写在架构这本大书边上的感悟罢了。这些感悟,或是阅读到精彩段落的击节赞叹,或是不明其义而反复研读之后的醍醐灌顶,或是触类旁通体会到架构本质因而不揣冒昧地给出自己的心得体会。在评注过程中,我恪守“扬长避短”的原则,不懂就不装懂,默不作声,当一位沉默的看客;一旦涉猎到自己擅长的部分,却也不妨洋洋洒洒高谈阔论,坦承自己的观点。

对于这些架构领袖们,我怀揣敬意,却也不愿以一种卑微的心态被动接受。我需要做一个具有自己人格和高度的评注者。至于对否,就将给读者诸君对评注再做一次“评注”吧!


行业专家推荐


《架构之美(评注版)》在架构之美原稿的基础上增加了一些精彩评注。这些评注,或阐述概念、或展开话题、或补充观点、或独创见解。评注内容涉及到架构风格、技术选型、设计模式、语言特性、数据分析工具、实时数据处理工具、研发过程、组织等等,张逸老师渊博的知识和大量软件工程实践的架构经验使我获益良多。架构之美一书数年前读过,评注版仍令我心向往之。读良书悟新知,评注观点亦如老友在品茗座谈间娓娓道来,又时有震耳发聩之声。 ——蚂蚁金服高级技术专家 右军

程序的健壮、优雅、灵活和易维护,是我们每个研发人员追求的目标。评注者结合自己的实践经验,对架构之美的深刻领悟全部体现在了评注文本中。 ——京东商城 POP京麦平台 架构师 王新栋

与张逸相识同事多年,常称之为软件开发领域的文艺青年。《架构之美》由张逸来评注可为相得益彰,原书从我们日常繁琐的架构工作中抽象出了一系列优雅的原则,而真正的理解又需要张逸这样的传道者来为我们娓娓道来。评注让我又重拾了一次这本名著,还要感谢张逸通过这样的努力分享了自己多年的架构心得。——ThoughtWorks咨询总监 精益敏捷专家 肖然

相关文章
|
3月前
|
设计模式 算法 C++
C++架构之美:设计卓越应用
C++架构之美:设计卓越应用
264 2
|
1月前
编程之路:从代码到架构的心路历程
【7月更文挑战第9天】在数字世界的迷宫中,每一行代码都承载着创造者的梦想与挑战。本文将通过个人技术感悟的镜头,探索编程实践的深层次价值,从最初的代码编写到复杂的系统架构设计,揭示技术成长的内在逻辑和情感变迁。我们将一同穿梭在技术的森林里,寻找那些让代码生动起来的秘密。
22 2
|
21天前
|
算法
代码之美:从技术感悟到生活哲学
在数字时代的浪潮中,编程不仅仅是一种专业技能,更是一种思考方式。本文将通过个人的技术实践和深入思考,探索编程如何影响我们的世界观、解决问题的方法以及日常生活。从算法的简洁性到系统设计的艺术性,我们将一同走进代码背后的美学与哲学,感受技术与生活的和谐共鸣。
|
2月前
|
算法 开发者
探索技术之美:我的编程之旅
【6月更文挑战第15天】在数字世界的迷宫中,我是一名探险家,用代码作为指南针。每一段算法的编写,都是我与问题对话的过程;每一次系统的优化,都仿佛是对宇宙规律的更深理解。本文将分享我在技术探索中的个人感悟,以及如何通过编程实践来提升自我。
|
2月前
|
设计模式 程序员
代码之美:编程艺术与实践的融合
本文旨在探索编程的艺术性,揭示如何通过技术实践提升软件质量与开发效率。文章将分享个人在编程过程中的感悟,包括对代码美学的理解、设计模式的应用、重构的重要性以及持续学习的态度。读者可以从中获取如何将编程技艺与艺术感结合,以创造出既实用又美观的代码。
|
11月前
|
缓存 架构师 应用服务中间件
今天跟大家聊一聊软件架构(图文并茂)
今天跟大家聊一聊软件架构(图文并茂)
237 1
|
存储 缓存 负载均衡
|
存储 C++
经典的QVariant设计之道
经典的QVariant设计之道
|
架构师 前端开发 程序员
为了成为一名架构师必须稳扎稳打,软件架构设计的基本概念
软件行业的人才结构是金字塔,我们的目标就是向塔尖走去,从程序员到技术经理或者程序员到架构 师,都是我们职业路上所追求的。
|
消息中间件 存储 缓存
架构之美-软件实现分析之道
理解一个实现,是以对模型和接口的理解为前提。 如果想了解一个系统的实现,应从软件结构和关键技术两个方面着手。无论是软件结构,还是关键技术,我们都需要带着自己的问题入手,而问题的出发点就是我们对模型和接口的理解。 了解软件的结构,其实,就是把分层的模型展开,看下一层模型: 要知道这个层次给你提供了怎样的模型 要带着自己的问题去了解这些模型为什么要这么设计 Kafka的实现主要是针对机械硬盘做的优化,现在的SSD硬盘越来越多,成本越来越低,这个立意的出发点已经不像以前那样稳固了。
127 0
架构之美-软件实现分析之道