计算机书籍控

程序员的职业素养

《程序员的职业素养》是编程大师 Robert C. Martin40余年编程生涯的心得体会, 讲解成为真正专业的程序员需要什么样的态度、原则,需要采取什么样的行动。Robert C. Martin以自己以及身边的同事走过的弯路、犯过的错误为例,意在为后来人引路,助其职业生涯迈上更高台阶。

目录


第1章 专业主义
1.1 清楚你要什么
1.2 担当责任
1.3 首先,不行损害之事
1.3.1 不要破坏软件功能
1.3.2 不要破坏结构
1.4 职业道德
1.4.1 了解你的领域
1.4.2 坚持学习
1.4.3 练习
1.4.4 合作
1.4.5 辅导
1.4.6 了解业务领域
1.4.7 与雇主/客户保持一致
1.4.8 谦逊
1.5 参考文献
第2章 说“不”
2.1对抗角色
2.2高风险时刻
2.3要有团队精神
2.3.1试试看
2.3.2消极对抗
2.4说“是”的成本
2.5如何写出好代码
第3章说“是”
3.1承诺用语
3.1.1识别“缺乏承诺”的征兆
3.1.2真正的承诺听起来是怎样的
3.1.3 总结
3.2学习如何说“是”
3.2.1 “试试”的另一面
3.2.2 坚守原则
3.3结论
第4章编码
4.1做好准备
4.1.1 凌晨3点写出的代码
4.1.2焦虑时写下的代码
4.2流态区
4.2.1 音乐
4.2.2 中断
4.3 阻塞
4.4调试
4.5保持节奏
4.5.1知道何时应该离开一会
4.5.2开车回家路上
4.5.3 洗澡
4.6进度延迟
4.6.1期望
4.6.2盲目冲刺
4.6.3加班加点
4.6.4交付失误
4.6.5定义“完成”
4.7帮助
4.7.1帮助他人
4.7.2接受他人的帮助
4.7.3 辅导
4.8参考文献
第5章测试驱动开发
5.1此事已有定论
5.2 TDD的三项法则
5.3 TDD的优势
5.3.1 确定性
5.3.2缺陷注入率
5.3.3 勇气
5.3.4 文档
5.3.5设计
5.3.6、专业人士的选择
5.4 TDD的局限
5.5参考文献
第6章练习
6.1 引子
6.1.1 10的22次方
6.1.2转变
6.2编程柔道场
6.2.1 卡塔
6.2.2瓦萨
6.2.3 自由练习
6.3 自身经验的拓展
6.3.1 开源
6.3.2 关于练习的职业道德
6.4结论
6.5参考文献
第7章验收测试
7.1需求的沟通
7.1.1过早精细化
7.1.2迟来的模糊性
7.2验收测试
7.2.1 “完成”的定义
7.2.2 沟通
7.2.3 自动化
7.2.4额外工作
7.2.5验收测试什么时候写,由谁来写
7.2.6开发人员的角色
7.2.7测试的协商与被动推进
7.2.8验收测试和单元测试
7.2.9 图形界面及其他复杂因素
7.2.10持续集成
7.3结论
第8章测试策略
8.1 QA应该找不到任何错误
8.1.1 QA也是团队的一部分
8.1.2需求规约定义者
8.1.3特性描述者
8.2自动化测试金字塔
8.2.1 单元测试
8.2.2组件测试
8.2.3集成测试
8.2.4 系统溺4试
8.2.5人工探索式测试
8.3结论
8.4参考文献
第9章时间管理
9.1 会议
9.1.1拒绝
9.1.2 离席
9.1.3确定议程与目标
9.1.4立会
9.1.5迭代计划会议
9.1.6迭代回顾和DEM0展示
9.1.7争论/反对
9.2注意力点数
9.2.1 睡眠
9.2.2咖啡因
9.2.3恢复
9.2.4肌肉注意力
……
第10章 预估
第11章 压力
第12章 协作
第13章 团队与项目
第14章 辅导、学徒期与技艺
附录 工具

书籍下载

免费下载

正版书籍

程序员的职业素养