原文标题:我要成为大神程序员,别拦我
作者给每个想成为大神的程序员下面的一些建议:
- 在数据科学上投入一些精力
- 尽量亲自动手去完成事情。你将会有一种直觉,知道如何去处理该事物。
- 积累案例,从Excel中标注着自己已获得的数据开始。
- 在找到通用办法之前,先找到一种能解决当前问题的办法。
- 让算法本身输出调试信息。你应该能够转储每一步的中间结果,并用文本编辑器或是 Web 浏览器手动检查它们。
- 不用那么着急写单元测试,因为很多时候连正确的行为自己还无法定义
- 维护一些大型的,完全不同的项目
- 检查文件的大小,找出最核心的业务逻辑
- 从主循环调度开始单步调试程序。可以学到很多关于控制流的东西。
- 寻找数据结构,特别是做为参数传递到许多函数中的那些。大多数程序具有一个小的关键数据结构集合,找到它们,理解代码的其余部分会变得容易的多。
- 写单元测试。这是确认你所理解的代码与真实代码工作方式无误的最好方法。
- 移除一些代码,看看什么出问题了。(但不要 check in!)
- 性能优先的思考
- 不要过早优化,除非用户开始抱怨它太慢了
- 设立性能指标,不漫无目的的进行评估
- 许多性能瓶颈都存在于多个系统交互的部分
- 多使用工作
- 少做无用功,尽量缓存计算结果,对不精确需求的东西可以进行估算
- 不要忽视现实世界的东西,很多算法评估并不理想,但是表现非凡
- 有时通过修改数据结构减少内存使用,会给你带来巨大的性能收益
- 编码的技巧
- 做用户要用的功能
- 慎重选择依赖的代码库
- 小团队可以将问题积累起来,集中火力一次性解决,大型团队尽量不要积累代码问题,学会协作。
原文链接https://www.ttalk.im/bookmarks/42