文章一共写了二十条,感觉作为.NET程序员,一下几条很受用,便摘来收藏
原文链接如下:http://www.codeceo.com/article/20-things-programmer-should-know.html
译文链接:http://www.codeceo.com/article/20-things-programmer-should-know.html
英文原文:http://www.codeceo.com/article/20-things-programmer-should-know.html
4.以Why开始
不要客户说什么就是什么,多问几个Why。只有弄清楚需求背后的原因,才能发现新的可能。很多时候,我们可以通过对现有产品的改动来完成需求,大大减少工作量。
有时候,客户的想法与你对产品的看法可能达不成一致。那么反过来问自己“Why?”。这能让你更加明确自己的第一感觉是否对头。如果还是裁决不了,那么就需要其他主要决策者的参与。
5.努力并不一定都有回报
不要工作得太辛苦。减少工作量,增加工作效率,才能完成更多的工作。我可不是在忽悠你。做项目时,如果想减少工作量,那么势必得找到实现目标的高效途径。在提高了工作效率的同时还有助于积累经验。以后碰到这样的问题不就是三下五除二的事了。
6.大量刻意的训练
我们还可以训练自己从而提高执行任务的能力。这是一种技巧和技术,也意味着重复——意味着带着某种目的去执行任务。不断地重复and重复,一遍又一遍,直到你达到所需的能力级别。
译者注:我曾经学asp的时候重复写了几十遍数据库操作的代码,都会背了:)
7.做点所谓的“重复工作”
使用现有的代码与一步步设计自己的软件——测试、修复、改进——是完全不同的。这些旁人看来所谓的“重复工作”有助于你更深刻地熟悉并理解现有的各个组件是如何运作的。
大多数开发人员可能从来没有创建过核心的软件库,因此对它们的工作原理也不甚了解。其结果就是,一旦碰到这些种类的软件出现问题就会束手无策。了解表面永远是不够的,只有将里面隐含的工作原理挖出来,才能让你真正地在这一行业,独步武林。
8.不断学习
- 阅读。(译者注:订阅《快乐码农》程序员期刊)
- 参与邮件讨论。
- 获取并编写代码。
- 找一个导师。
- 了解你正在使用的框架和库。
- 犯了错误,需要修复bug或遇到问题时,弄清楚原因。
- 教人也是学习的一种好方法,可以教学相长。
- 参于用户组或本地会议。
- 加入或启动研究小组。
- 听讲座或在线观看会谈。
- 学习一门新的编程语言。
- 梳理出新的,可用于技术堆栈的想法和点子。
注意总结积累。优化自己写的东西。抽时间重构。日积月累必将有所收获