book:程序员修炼之道
差别
这里会显示出您选择的修订版和当前版本之间的差别。
| 两侧同时换到之前的修订记录前一修订版后一修订版 | 前一修订版 | ||
| 程序员修炼之道 [2020/08/14 23:07] – plough | book:程序员修炼之道 [2020/09/02 17:01] (当前版本) – ↷ 页面程序员修炼之道被移动至book:程序员修炼之道 plough | ||
|---|---|---|---|
| 行 275: | 行 275: | ||
| 在遇到不可能解决的问题时,要确定真正的约束。问问你自己:“它必须以这种方式完成吗?它真的必须完成吗?” | 在遇到不可能解决的问题时,要确定真正的约束。问问你自己:“它必须以这种方式完成吗?它真的必须完成吗?” | ||
| - | ====2.==== | + | ====56. 等你准备好再开始==== |
| + | Start When You're Ready | ||
| - | ====2.==== | + | 你的一生都在积累经验。不要忽视反复出现的疑虑。 |
| - | ====2.==== | + | ====57. 对有些事情“做”胜于“描述”==== |
| + | Some Things Are Better Done than Described | ||
| - | ====2.==== | + | 不要掉进规范的螺旋——在某个时刻,你需要开始编码。 |
| - | ====2.==== | + | ====58. 不要做形式方法的奴隶==== |
| + | Don't Be a Slave to Formal Methods | ||
| - | ====2.==== | + | 如果你没有把某项技术放进你的开发实践和能力的语境中,不要盲目地采用它。 |
| - | ====2.==== | + | ====59. 昂贵的工具不一定能制作出更好的设计==== |
| + | Costly Tools Don't Produce Better Designs | ||
| - | ====2.==== | + | 小心供应商的炒作,行业教条、以及价格标签的诱惑。要根据工具的价值判断它们。 |
| - | ====2.==== | + | ====60. 围绕功能组织团队==== |
| + | Organize Teams Around Functionality | ||
| - | ====2.==== | + | 不要把设计师与编码员分开,也不要把测试员与数据建模员分开。按照你构建代码的方式构建团队。 |
| - | ====2.==== | + | ====61. 不要使用手工流程==== |
| + | Don't Use Manual Procedures | ||
| - | ====2.==== | + | shell 脚本或批文件会一次次地以同一顺序执行同样的指令。 |
| - | ====2.==== | + | ====62. 早测试,常测试,自动测试==== |
| + | Test Early. Test Often. Test Automatically | ||
| - | ====2.==== | + | 与呆在书架上的测试计划相比,每次构建时运行的测试要有效得多。 |
| + | ====63. 要到通过全部测试,编码才算完成==== | ||
| + | Coding Ain't Done 'Til All the Tests Run | ||
| + | |||
| + | 就是这样。 | ||
| + | |||
| + | ====64. 通过“蓄意破坏”测试你的测试==== | ||
| + | Use Saboteurs to Test Your Testing | ||
| + | |||
| + | 在单独的软件副本上故意引入 bug,以检验测试能够抓住它们。 | ||
| + | |||
| + | ====65. 测试状态覆盖,而不是代码覆盖==== | ||
| + | Test State Coverage, Not Code Coverage | ||
| + | |||
| + | 确定并测试重要的程序状态。只是测试代码行是不够的。 | ||
| + | |||
| + | ====66. 一个 bug 只抓一次==== | ||
| + | Find Bugs Once | ||
| + | |||
| + | 一旦测试员找到一个 bug,这应该是测试员最后一次找到它。此后自动测试应该对其进行检查。 | ||
| + | |||
| + | ====67. 英语就是一种编程语言==== | ||
| + | English is Just a Programming Language | ||
| + | |||
| + | 像你编写代码一样编写文档:遵守 DRY 原则、使用元数据、MVC、自动生成,等等。 | ||
| + | |||
| + | ====68. 把文档建在里面,不要拴在外面==== | ||
| + | Build Documentation In, Don't Bolt It On | ||
| + | 与代码分离的文档不太可能被修正和更新。 | ||
| + | |||
| + | ====69. 温和地超出用户的期望==== | ||
| + | Gently Exceed Your Users' Expectations | ||
| + | |||
| + | 要理解你的用户的期望,然后给他们的东西要多那么一点。 | ||
| + | |||
| + | ====70. 在你的作品上签名==== | ||
| + | Sign Your Work | ||
| + | |||
| + | 过去时代的手艺人为能在他们的作品上签名而自豪。你也应该如此。 | ||
book/程序员修炼之道.1597417633.txt.gz · 最后更改: 2020/08/14 23:07 由 plough