展开全部

主编推荐语

写出的代码能让人快速理解、轻松维护、容易扩展的程序员,才是专业的程序员。

内容简介

帮你让别人用最短的时间理解你的代码!

本书关注编码的细节,总结了很多提高代码可读性的小技巧。如果你要成为一位优秀的程序员,要想开发出高质量的软件系统,必须从细处着手,做到内外兼修,本书将为你提供有效的指导。细节决定成败,思路清晰、言简意赅的代码让程序员一目了然;而格式凌乱、拖沓冗长的代码让程序员一头雾水。除了可以正确运行以外,优秀的代码必须具备良好的可读性,编写的代码要使其他人能在最短的时间内理解才行。本书旨在强调代码对人的友好性和可读性。本书关注编码的细节,总结了很多提高代码可读性的小技巧,看似都微不足道,但是对于整个软件系统的开发而言,它们与宏观的架构决策、设计思想、指导原则同样重要。

编码不仅仅只是一种技术,也是一门艺术,编写可读性高的代码尤其如此。如果你要成为一位优秀的程序员,要想开发出高质量的软件系统,必须从细处着手,做到内外兼修,本书将为你提供有效的指导。

目录

  • 版权信息
  • O'Reilly Media,Inc.介绍
  • 业界评论
  • 译者序
  • 前言
  • 本书内容安排
  • 如何阅读本书
  • 代码示例的使用
  • 联系我们
  • 致谢
  • 第1章 代码应当易于理解
  • 是什么让代码变得“更好”
  • 可读性基本定理
  • 总是越小越好吗
  • 理解代码所需的时间是否与其他目标有冲突
  • 最难的部分
  • 第一部分 表面层次的改进
  • 第2章 把信息装到名字里
  • 选择专业的词
  • 避免像tmp和retval这样泛泛的名字
  • 用具体的名字代替抽象的名字
  • 为名字附带更多信息
  • 名字应该有多长
  • 利用名字的格式来传递含义
  • 总结
  • 第3章 不会误解的名字
  • 例子:Filter()
  • 例子:Clip(text,length)
  • 推荐用first和last来表示包含的范围
  • 推荐用begin和end来表示包含/排除范围
  • 给布尔值命名
  • 与使用者的期望相匹配
  • 例子:如何权衡多个备选名字
  • 总结
  • 第4章 审美
  • 为什么审美这么重要
  • 重新安排换行来保持一致和紧凑
  • 用方法来整理不规则的东西
  • 在需要时使用列对齐
  • 选一个有意义的顺序,始终一致地使用它
  • 把声明按块组织起来
  • 把代码分成“段落”
  • 个人风格与一致性
  • 总结
  • 第5章 该写什么样的注释
  • 什么不需要注释
  • 记录你的思想
  • 站在读者的角度
  • 最后的思考——克服“作者心理阻滞”
  • 总结
  • 第6章 写出言简意赅的注释
  • 让注释保持紧凑
  • 避免使用不明确的代词
  • 润色粗糙的句子
  • 精确地描述函数的行为
  • 用输入/输出例子来说明特别的情况
  • 声明代码的意图
  • “具名函数参数”的注释
  • 采用信息含量高的词
  • 总结
  • 第二部分 简化循环和逻辑
  • 第7章 把控制流变得易读
  • 条件语句中参数的顺序
  • if/else语句块的顺序
  • ?:条件表达式(又名“三目运算符”)
  • 避免do/while循环
  • 从函数中提前返回
  • 臭名昭著的goto
  • 最小化嵌套
  • 你能理解执行的流程吗
  • 总结
  • 第8章 拆分超长的表达式
  • 用做解释的变量
  • 总结变量
  • 使用德摩根定理
  • 滥用短路逻辑
  • 例子:与复杂的逻辑战斗
  • 拆分巨大的语句
  • 另一个简化表达式的创意方法
  • 总结
  • 第9章 变量与可读性
  • 减少变量
  • 缩小变量的作用域
  • 只写一次的变量更好
  • 最后的例子
  • 总结
  • 第三部分 重新组织代码
  • 第10章 抽取不相关的子问题
  • 介绍性的例子:findClosestLocation()
  • 纯工具代码
  • 其他多用途代码
  • 创建大量通用代码
  • 项目专有的功能
  • 简化已有接口
  • 按需重塑接口
  • 过犹不及
  • 总结
  • 第11章 一次只做一件事
  • 任务可以很小
  • 从对象中抽取值
  • 更大型的例子
  • 总结
  • 第12章 把想法变成代码
  • 清楚地描述逻辑
  • 了解函数库是有帮助的
  • 把这个方法应用于更大的问题
  • 总结
  • 第13章 少写代码
  • 别费神实现那个功能——你不会需要它
  • 质疑和拆分你的需求
  • 保持小代码库
  • 熟悉你周边的库
  • 例子:使用Unix工具而非编写代码
  • 总结
  • 第四部分 精选话题
  • 第14章 测试与可读性
  • 使测试易于阅读和维护
  • 这段测试什么地方不对
  • 使这个测试更可读
  • 让错误消息具有可读性
  • 选择好的测试输入
  • 为测试函数命名
  • 那个测试有什么地方不对
  • 对测试较好的开发方式
  • 走得太远
  • 总结
  • 第15章 设计并改进“分钟/小时计数器”
  • 问题
  • 定义类接口
  • 尝试1:一个幼稚的方案
  • 尝试2:传送带设计方案
  • 尝试3:时间桶设计方案
  • 比较三种方案
  • 总结
  • 附录 深入阅读
  • 关于写高质量代码的书
  • 关于各种编程话题的书
  • 历史上重要的书目
  • 作者简介
展开全部

评分及书评

4.7
3个评分

出版方

机械工业出版社有限公司

机械工业出版社是全国优秀出版社,自1952年成立以来,坚持为科技、为教育服务,以向行业、向学校提供优质、权威的精神产品为宗旨,以“服务社会和人民群众需求,传播社会主义先进文化”为己任,产业结构不断完善,已由传统的图书出版向着图书、期刊、电子出版物、音像制品、电子商务一体化延伸,现已发展为多领域、多学科的大型综合性出版社,涉及机械、电工电子、汽车、计算机、经济管理、建筑、ELT、科普以及教材、教辅等领域。