4.5 用户推荐指数
科技
类型
9.1
豆瓣评分
可以朗读
语音朗读
205千字
字数
No.22
年度书单
2020-04-01
发行日期
展开全部
主编推荐语
这是一本成为高手程序员的清单手册,颠覆了无数程序员的软件生涯。时隔20年全新再版。
内容简介
《程序员修炼之道》之所以在全球范围内广泛传播,被一代代开发者奉为圭臬,是因为它可以创造出真正的价值:或编写出更好的软件,或探究出编程的本质,而所有收获均不依赖于特定语言、框架和方法。
时隔20年的新版,经过全面的重新选材、组织和编写,覆盖哲学、方法、工具、设计、解耦、并发、重构、需求、团队等务实话题的最佳实践及重大陷阱,以及易于改造、复用的架构技术。本书极具洞察力与趣味性,适合从初学者到架构师的各阶层读者潜心研读或增广见闻。
目录
- 版权信息
- 内容简介
- 本书赞誉
- 序
- 新版前言
- 第一版前言
- 提示1 关注你的技艺
- 提示2 思考!思考你的工作
- 第1章 务实的哲学
- 1 人生是你的
- 提示3 你有权选择
- 2 我的源码被猫吃了
- 提示4 提供选择,别找借口
- 3 软件的熵
- 提示5 不要放任破窗
- 4 石头做的汤和煮熟的青蛙
- 提示6 做推动变革的催化剂
- 提示7 牢记全景
- 5 够好即可的软件
- 提示8 将质量要求视为需求问题
- 6 知识组合
- 提示9 对知识组合做定期投资
- 提示10 批判性地分析你读到和听到的东西
- 7 交流!
- 提示11 英语就是另一门编程语言
- 提示12 说什么和怎么说同样重要
- 提示13 把文档嵌进去,而不要栓在表面
- 第2章 务实的方法
- 8 优秀设计的精髓
- 提示14 优秀的设计比糟糕的设计更容易变更
- 9 DRY ——邪恶的重复
- 提示15 DRY——不要重复自己
- 提示16 让复用变得更容易
- 10 正交性
- 提示17 消除不相关事物之间的影响
- 11 可逆性
- 提示18 不设最终决定
- 提示19 放弃追逐时尚
- 12 曳光弹
- 提示20 使用曳光弹找到目标
- 13 原型与便签
- 提示21 用原型学习
- 14 领域语言
- 提示22 靠近问题域编程
- 15 估算
- 提示23 通过估算来避免意外
- 提示24 根据代码不断迭代进度表
- 第3章 基础工具
- 16 纯文本的威力
- 提示25 将知识用纯文本保存
- 17 Shell游戏
- 提示26 发挥 Shell 命令的威力
- 18 加强编辑能力
- 提示27 游刃有余地使用编辑器
- 19 版本控制
- 提示28 永远使用版本控制
- 20 调试
- 提示29 去解决问题,而不是责备
- 提示30 不要恐慌
- 提示31 修代码前先让代码在测试中失败
- 提示32 读一下那些该死的出错信息
- 提示33 “select”没出问题
- 提示34 不要假设,要证明
- 21 文本处理
- 提示35 学习一门文本处理语言
- 22 工程日记
- 第4章 务实的偏执
- 提示36 你无法写出完美的软件
- 23 契约式设计
- 提示37 通过契约进行设计
- 24 死掉的程序不会说谎
- 提示38 尽早崩溃
- 25 断言式编程
- 提示39 使用断言去预防不可能的事情
- 26 如何保持资源的平衡
- 提示40 有始有终
- 提示41 在局部行动
- 27 不要冲出前灯范围
- 提示42 小步前进——由始至终
- 提示43 避免占卜
- 第5章 宁弯不折
- 28 解耦
- 提示44 解耦代码让改变更容易
- 提示45 只管命令不要询问
- 提示46 不要链式调用方法
- 提示47 避免全局数据
- 提示48 如果全局唯一非常重要,那么将它包装到API 中
- 29 在现实世界中抛球杂耍
- 30 变换式编程
- 提示49 编程讲的是代码,而程序谈的是数据
- 提示50 不要囤积状态,传递下去
- 31 继承税
- 提示51 不要付继承税
- 提示52 尽量用接口来表达多态
- 提示53 用委托提供服务:“有一个”胜过“是一个”
- 提示54 利用 mixin 共享功能
- 32 配置
- 提示55 使用外部配置参数化应用程序
- 第6章 并发
- 33 打破时域耦合
- 提示56 通过分析工作流来提高并发性
- 34 共享状态是不正确的状态
- 提示57 共享状态是不正确的状态
- 提示58 随机故障通常是并发问题
- 35 角色与进程
- 提示59 用角色实现并发性时不必共享状态
- 36 黑板
- 提示60 使用黑板来协调工作流
- 第7章 当你编码时
- 37 听从蜥蜴脑
- 提示61 倾听你内心的蜥蜴
- 38 巧合式编程
- 提示62 不要依赖巧合编程
- 39 算法速度
- 提示63 评估算法的级别
- 提示64 对估算做测试
- 40 重构
- 提示65 尽早重构,经常重构
- 41 为编码测试
- 提示66 测试与找 Bug 无关
- 提示67 测试是代码的第一个用户
- 提示68 既非自上而下,也不自下而上,基于端对端构建
- 提示69 为测试做设计
- 提示70 要对软件做测试,否则只能留给用户去做
- 42 基于特性测试
- 提示71 使用基于特性的测试来校验假设
- 43 出门在外注意安全
- 提示72 保持代码简洁,让攻击面最小
- 提示73 尽早打上安全补丁
- 44 事物命名
- 提示74 好好取名;需要时更名
- 第8章 项目启动之前
- 45 需求之坑
- 提示75 无人确切知道自己想要什么
- 提示76 程序员帮助人们理解他们想要什么
- 提示77 需求是从反馈循环中学到的
- 提示78 和用户一起工作以便从用户角度思考
- 提示79 策略即元数据
- 提示80 使用项目术语表
- 46 处理无法解决的难题
- 提示81 不要跳出框框思考——找到框框
- 47 携手共建
- 提示82 不要一个人埋头钻进代码中
- 48 敏捷的本质
- 提示83 敏捷不是一个名词;敏捷有关你如何做事
- 第9章 务实的项目
- 49 务实的团队
- 提示84 维持小而稳定的团队
- 提示85 排上日程以待其成
- 提示86 组织全功能的团队
- 50 椰子派不上用场
- 提示87 做能起作用的事,别赶时髦
- 提示88 在用户需要时交付
- 51 务实的入门套件
- 提示89 使用版本控制来驱动构建、测试和发布
- 提示90 尽早测试,经常测试,自动测试
- 提示91 直到所有的测试都已运行,编码才算完成
- 提示92 使用破坏者检测你的测试
- 提示93 测试状态覆盖率,而非代码覆盖率
- 提示94 每个 Bug 只找一次
- 提示95 不要使用手动程序
- 52 取悦用户
- 提示96 取悦用户,而不要只是交付代码
- 53 傲慢与偏见
- 提示97 在作品上签名
- 跋
- 提示98 先勿伤害
- 提示99 不要助纣为虐
- 参考文献
- 练习的参考答案
- 译者跋
展开全部
出版方
电子工业出版社
电子工业出版社成立于1982年10月,是国务院独资、工信部直属的中央级科技与教育出版社,是专业的信息技术知识集成和服务提供商。经过三十多年的建设与发展,已成为一家以科技和教育出版、期刊、网络、行业支撑服务、数字出版、软件研发、软科学研究、职业培训和教育为核心业务的现代知识服务集团。出版物内容涵盖了电子信息技术的各个分支及工业技术、经济管理、科普与少儿、社科人文等领域,综合出版能力位居全国出版行业前列。