商家名称 | 信用等级 | 购买信息 | 订购本书 |
![]() |
大道至易:实践者的思想 [平装] | ![]() |
|
![]() |
大道至易:实践者的思想 [平装] | ![]() |
《大道至易:实践者的思想》可以看成是《大道至简》的姊妹篇,是以软件工程为体系、以组织结构为视角,融合系统架构师、项目管理者和软件开发人员三种角色实践的思想总成。《大道至易:实践者的思想》讨论这些思想,并陈述它们所基于的原则、背景与获得过程。《大道至易:实践者的思想》适合各类工程管理人员、软件开发人员和架构师阅读。
本书作者站在架构师的高度上来看待软件开发,甚至更大的意义上,看待以软件开发能力为核心的企业在产品战略、人力配置和文化方面的组织问题。作者在过去几年里,先后在两家超大规模互联网企业中做架构师,他在其中的矛盾、迷惘、挣扎和成就是这本书的思想源泉,而他对于架构师角色的实习和领悟,也是这本书的价值所在。作者采取的方式,就是老老实实把自己的思维过程和喃喃自语都很原生态地记录下来,从而形成一本“心语”之作。因此,如果读者也能够“心心相印”,潜下心来仔细品读这本书,那么就相当于跟作者一起进行了一段旅行对话,或者,一起在思维的教武场里杀个几进几出。或许这种如切如磋、如琢如磨、反复捶打、反复锻造的风格,倒确实能够帮助有心的读者获得一些架构设计的经验。
因此,无论从内容上,还是从行文风格上,这本书都是非常独特的,也有其独特的价值。作者的作品,一向是长销之作,其价值也往往需要一段时间才能被真正认识,我不敢说自己能够在短暂的阅读当中充分理解这本书,但是我相信其中所蕴藏的价值和诚意。
——孟岩
周爱民:国内软件开发界资深软件工程师,从1996年开始涉足商业软件开发,历任部门经理、区域总经理、高级软件工程师、平台架构师等职。周爱民先生在软件开发、软件了程、团队建设以及部门管理方面经验丰富,是Borland Delphi产品技术专家,也是Qomo开源项目(JavaScript)的发起者。在JavaScript开发方面,有超过9年的实践经验。
2003年5月 被美国Borland公司授予“Borland Deophi产品专家”称号,并授予“论坛特别贡献奖”;
2004年8月 出版软件开发专著《Delphi源代码分析》,被业界誉为“Delphi领域精品著作”;
2005年12月 发起JavaScript开源项目Qomolangma(Qomo),研究语言特性、框架设计与企业级应用库;
2007年4月 出版软件工程专著《大道至简——软件工程实践者的思想》,被誉为“激荡新思的佳作”;
2007年11月 参加CSDN主办的软件开发大会(SD2C),主讲“JJavaScript引擎技术”。
总论 领域角色的关注
第一节 什么是领域角色的关注
第二节 基于组织视角的观察
第三节 工程的本质问题是组织
第一篇 具体工程下的组织与行为
引言 管理中的逻辑
第一章 任人治事:组织行为的基本认知
第一节 刺秦与灭秦
第二节 看到别人能做什么
第三节 要做事,不要管理
第四节 伯夷与叔齐是怎么死的
第二章 谋定后动:项目的存在权
第一节 试错通常是无能的托辞
第二节 合法的山大王为什么没能成功
第三节 自己想办法
第三章 具体而微:工程是系统而不是事
第一节 做事的选择
第二节 你要什么
附录一 行在道上,从局部到全局
附录二 本来面目——大教堂、集市,与作坊
附录三 杀不死的人狼——我读《人月神话》
第二篇 程序源流:从计算到系统(上)
引言 简单的本源
第四章 计算系统
第一节 数,以及对数据的性质的思考
第二节 逻辑
第三节 抽象
第五章 语言及其面临的系统
第一节 语言
第二节 从功能到系统
第六章 程序设计的核心思想
第一节 数据结构:顺序存储
第二节 数据结构:散列存储
第三节 执行体及其执行过程中的环境
第四节 语法树及其执行过程
第五节 对象系统:表达、使用与模式
第三篇 程序源流:从计算到系统(下)
第七章 应用开发基础
第一节 应用开发的背景与成因
第二节 应用开发技术
第三节 开发视角下的工程问题
第四节 应用程序设计语言的复杂性
第八章 系统的基础部件
第一节 分布
第二节 依赖
第三节 消息
第四节 系统
第九章 系统的基本组织方法与原理
第一节 行为的组织及其抽象
第二节 领域间的组织
附录一“主要编程范式”及其语言特性关系
附录二 继承与混合,略谈系统的构建方式
附录三 像大师们一样思考——从“UML何时死掉”谈起
附录四 VCL已死,RAD已死
第四篇 架构的思想与指导原则
引言 架构师的思维
第十章 你所关注的系统
第一节 了解系统的过程
第二节 知识的构建
第三节 最初的事实
第十一章 架构是过程,而非结果
第一节 架构师的能力结构
第二节 系统架构与决策
第三节 架构的表达与逻辑
第十二章 架构原则,技艺、艺术与美
第一节 架构原则
第二节 技艺、艺术与美
附录一 做人、做事,做架构师——架构师能力模型解析
附录二 专访:谈企业软件架构设计(节选)
参考资料
图表索引
版权页:
插图:
(1)记事本作为操作系统的默认组件,其外观表现和交互特性应当是由系统的全局设置来控制的。对于前者,例如桌面主题导致的记事本前景与背景变化;对于后者,例如系统默认打印设备的设置,或者输入法设置。
(2)如果操作系统的默认设置不能影响到记事本,则系统的其他默认组件也会存在类似的问题或需求,这意味着整体实施的复杂度会增加。
(3)类似于jEdit、EditPlus等产品的用户只是操作系统用户群体的一个较小子集,其需求不具有代表性。
(4)以记事本通常处理的文本长度来说,是不需要用颜色来区分文本的不同部分的。
对于项目管理角色来说,他否决这项需求的理由会更简单直接:
(1)在当前的记事本版本中,未定义该项特性;
(2)该项特性与原始的设定“文本处理工具”没有必然关系,可以延后决定;
(3)该项特性在来自产品、市场等各方的报告中有明显分歧,存在实施风险;
(4)在项目实施阶段,增加该特性对项目过程控制存在不确定的影响。
然而与上述两类思考不同,技术实现角色将更多地关注实现的细节问题。其中一类问题是与项目经理共同关注的,通常与项目背景以及实施环境有关系。例如:
(1)可能的代码量与要求的代码质量;
(2)后续维护人员的水平以及因此所需要的注释详细程度;
(3)开发环境与测试环境的部署以及性能。
当然,类似于在何种团队中工作,以及开发部门中是否可以玩桌游等,也是技术实现角色经常关注的问题。不过这类问题的特点是:与具体项目并没有关系,因此大多数情况下会由公司的技术部门或整体组织来平衡。
在具体的项目中,开发人员通常更关注的是另一类更加细节的专业问题,例如:
(1)产品性能的具体要求,例如运行在何种设备上,以及定量的稳定性要求如何;
(2)采用的语言、框架、程序库,其技术复杂度如何,以及资料是否翔实等;
(3)待处理的标准文本格式规范,例如UTF—8编码以及BOM头规格;
(4)需测试操作系统初始环境中所有类型的文本,包括.ini、.xml和.reg等;
(5)该产品应由多行(ES_MULTILINE)的Edit来实现。
喜欢大道至易:实践者的思想 [平装]请与您的朋友分享,由于版权原因,读书人网不提供图书下载服务