展开全部

主编推荐语

本书是作者围绕软件工程能力所做的系列培训的内容汇编。这些内容来源于作者20多年以来对软件工程的学习体会和项目实践,以及对中国工业界软件工程师的观察和教育实践。

内容简介

全书共8章,第1章说明了什么是软件工程能力,阐述了软件工程能力中的素质要求。第2-8章分别从代码、文档、项目管理这三个方面讲解了提升软件工程能力素质的实践方法。

对于代码,第2章"代码的艺术”对其进行了总体说明,第3章重点说明了代码评审,第4章以Mini-spider为例说明了方法如何运用。对于文档,第5章说明了如何写好项目文档,第6章说明了做研究的基本方法。对于项目管理,第7章简要说明了如何做好项目管理,第8章重点说明了如何做好项目沟通。

目录

  • 版权信息
  • 内容简介
  • 推荐序一
  • 推荐序二
  • 推荐序三
  • 推荐序四
  • 推荐序五
  • 推荐序六
  • 推荐序七
  • 推荐语
  • 前言
  • 作者介绍
  • 第1章 软件工程能力
  • 1.1 为什么要重视工程能力
  • 1.2 什么是工程能力
  • 1.2.1 工程能力的误区
  • 1.2.2 工程能力的定义
  • 1.3 怎样提升工程能力
  • 第2章 代码的艺术
  • 2.1 背景和初衷
  • 2.2 代码和艺术
  • 2.2.1 代码也能成为艺术作品
  • 2.2.2 软件工程师和“码农”
  • 2.2.3 来自艺术的启发
  • 2.2.4 写代码并非易事
  • 2.3 好代码和坏代码
  • 2.3.1 好代码的特性
  • 2.3.2 坏代码的例子
  • 2.4 好代码从哪里来
  • 2.4.1 好代码不止于编码
  • 2.4.2 需求分析和系统设计
  • 2.5 如何做好需求分析
  • 2.5.1 如何描述需求
  • 2.5.2 对需求分析的误解
  • 2.5.3 需求分析的重要性
  • 2.6 如何做好系统设计
  • 2.6.1 什么是系统设计
  • 2.6.2 设计文档的分类
  • 2.6.3 什么是系统架构
  • 2.6.4 系统设计的原则和方法
  • 2.6.5 重视对外接口
  • 2.7 如何写出好代码
  • 2.7.1 代码的沟通价值
  • 2.7.2 模块的设计方法
  • 2.7.3 划分模块的方法
  • 2.7.4 函数的设计方法
  • 2.7.5 代码块的编写注意事项
  • 2.7.6 软件开发中的命名
  • 2.8 如何支持系统运营
  • 2.8.1 可监测性的重要性
  • 2.8.2 以BFE开源项目为例
  • 2.9 成为优秀软件工程师的三条路径
  • 2.9.1 路径一:学习—思考—实践
  • 2.9.2 路径二:知识—方法—精神
  • 2.9.3 路径三:基础乃治学之根本
  • 第3章 代码评审
  • 3.1 代码评审的常见误区
  • 3.2 为什么要做好代码评审
  • 3.2.1 代码评审的重要意义
  • 3.2.2 没有做好代码评审的后果
  • 3.2.3 为什么要提升代码质量
  • 3.2.4 为什么要提升编码能力
  • 3.3 如何做好代码评审
  • 3.3.1 代码评审的常见问题
  • 3.3.2 代码评审的正确态度
  • 3.3.3 代码评审的推荐步骤
  • 3.3.4 对坏代码的简单判断
  • 3.3.5 代码评审的注意事项
  • 3.4 如何成为好的代码评审人
  • 第4章 “代码的艺术”应用
  • 4.1 需求的分析
  • 4.1.1 题目说明
  • 4.1.2 功能分析
  • 4.2 软件的架构
  • 4.2.1 模块切分
  • 4.2.2 系统架构
  • 4.2.3 软件组装
  • 4.2.4 crawler间的数据共用
  • 4.2.5 数据封装
  • 4.2.6 crawler的执行逻辑
  • 4.3 多线程机制
  • 4.3.1 数据互斥访问
  • 4.3.2 临界区注意事项
  • 4.3.3 任务的分发
  • 4.3.4 程序的优雅退出
  • 4.4 其他实现细节
  • 4.4.1 配置的读取
  • 4.4.2 种子信息的读取
  • 4.4.3 import的使用
  • 4.4.4 异常处理
  • 4.4.5 构造函数的使用
  • 4.4.6 正则表达式的使用
  • 4.5 延伸思考
  • 4.5.1 实现对各网站的限速
  • 4.5.2 从单机扩展到分布式
  • 第5章 项目文档
  • 5.1 正确认识项目文档
  • 5.1.1 项目文档的重要作用
  • 5.1.2 项目文档的常见误区
  • 5.1.3 项目文档的常见问题
  • 5.1.4 什么时候需要写项目文档
  • 5.1.5 项目文档是写给谁的
  • 5.1.6 项目文档的基本规范
  • 5.2 项目文档的编写
  • 5.2.1 编写顺序
  • 5.2.2 标题拟定
  • 5.2.3 段落编写
  • 5.2.4 问题划分
  • 5.2.5 表述模式
  • 5.3 项目文档中的图片
  • 5.4 项目文档评审
  • 5.4.1 评审常见问题
  • 5.4.2 评审方法
  • 5.5 项目文档存放
  • 5.5.1 常见错误
  • 5.5.2 存放建议
  • 5.5.3 项目文档索引举例
  • 5.5.4 存放工具的选择
  • 5.6 项目文档编写工具
  • 5.7 如何提高项目文档编写能力
  • 第6章 做研究
  • 6.1 什么是研究
  • 6.2 如何做好研究
  • 6.2.1 发现问题
  • 6.2.2 分析问题
  • 6.2.3 解决问题
  • 6.3 做好研究的必备素质
  • 6.3.1 关于做人
  • 6.3.2 关于做事
  • 6.3.3 关于做学问
  • 第7章 项目管理
  • 7.1 重视项目管理
  • 7.2 相关基本概念
  • 7.3 项目管理的过程和步骤
  • 7.3.1 项目规划和启动
  • 7.3.2 项目执行和监控
  • 7.3.3 项目总结与回顾
  • 第8章 项目沟通
  • 8.1 项目沟通的重要性
  • 8.2 项目沟通方式及对比
  • 8.3 面对面沟通
  • 8.4 电话沟通
  • 8.5 会议沟通
  • 8.6 IM工具沟通
  • 8.7 Email沟通
  • 附录A 延伸阅读图书推荐
  • 软件工程和编程思想类
  • 项目管理类
  • 项目文档编写和阅读类
  • 产品设计类
  • 致谢
展开全部

评分及书评

3.9
10个评分
  • 用户头像
    给这本书评了
    5.0
    非常不错的书

    兼顾了实践经验和原则指导,是 201 原则的落地篇,值得推广给所有高级工程师来看,我会推荐给认识的工程师。目前碰到很多高级工程师基础不扎实,实际水平只有在不断的 review 中互动才能体现出来和提高,合作的工程师之间要做到高内聚(互动密切,有一致共识),松耦合(每个人负责的部分和其他人边界清晰)

      转发
      评论
      用户头像
      给这本书评了
      5.0
      特别适合刚参加工作的同学阅读

      能感受到章老师的谆谆教诲是新入职同学的必备好书很有实践价值

        转发
        评论

      出版方

      电子工业出版社

      电子工业出版社成立于1982年10月,是国务院独资、工信部直属的中央级科技与教育出版社,是专业的信息技术知识集成和服务提供商。经过三十多年的建设与发展,已成为一家以科技和教育出版、期刊、网络、行业支撑服务、数字出版、软件研发、软科学研究、职业培训和教育为核心业务的现代知识服务集团。出版物内容涵盖了电子信息技术的各个分支及工业技术、经济管理、科普与少儿、社科人文等领域,综合出版能力位居全国出版行业前列。