1. 思考开发软件的目的
为了帮助人们
2. 思考软件设计的目标
设计需要简洁,同时给用户提供帮助
3. 正确理解工作
4. 保持简洁
尽力让其他程序员看到尽可能简洁的代码
5. 控制复杂度
首要目标是把控复杂,而不是创造复杂
6. 软件维护
减少维护代码的工作量比减少运行代码的工作量更重要
7. 保持一致
这是保持简洁的一部分。保持命名的一致性。
8. 解决问题
首先要理解, 费曼:“如果你不能简洁地解释它,那你就是不理解它”
然后是计划,三思而后行
最后是分解问题,分而治之,逐个击破
9. 测试
增添代码时,新代码是有测试的。
10 适当评估
正确评估项目难度,通常会低估了项目的难度导致延期。
分解任务,任务越小,评估起来越容易。
记住:做任何事情所需要的时间比想象的更多。
11. 避免写重复代码
比起写代码,读代码更困难。所以很多情况都会想考虑是否要从头开始写。但是:重构应该是第一选择。
12. 自我发展
多尝试不同的编程语言和编程工具,入读书籍。
思路开阔,不要太沉迷某个技术,而是要用技术解决某个特定的问题。
13. 远离个人英雄主义
要懂得及时止损。
14. 不要立即提问,适时求助
尝试自己找到解决方法,跳出熟知的概念或语言的舒适圈。
实在想不出解决方法时,利用搜索工具。