高效程序员的特征

1.主动学习新技术与非技术方面的新知识

      好的程序员应该一直保持主动学习的状态,无论是技术方面或是非技术方面的知识,都应该涉猎和容纳。眼界不仅仅限于技术层面。

程序员不应该将自己定义为XXX工程师(XXX任选一门编程语言补上)。反省自己虽然有关注较新的技术,但关注得比较多的是自己从事的JavaWeb方面。太局限于一种语言与平台。


2. 务实而不教条

     别在短时间内追求完美主义。解决问题要找到的是最适合解决当前难题的最优解,而非纠结在完美解法上。

3.懂得如何通过研究找到答案

      个人觉得这是鉴别合格程序员的一个判定条件。比较多的新手程序员编程中出现的问题大多都可以通过搜索引擎找出相关的解决方法,直接按照答案修改几个参数程序又能跑了就弃之不理。这种方法是提高不了解决问题能力的。在我刚入门编程的时候也这样做过,直到后来自己动手写一个新项目时出现类似的问题,我对这个问题似曾相识,却无从下手解决,没有自己的一套分析解决问题的方法时才醒悟过来,直接搜索引擎不加思考地修改几个参数后看程序能跑就置之不理的做法无异是自欺欺人的作弊——我根本没解决掉这个问题。

      所以,应该阅读‘编译时错误’,‘运行时错误’的信息,自行分析推测原因,或者从程序开始一步步运行,搞清楚运行机制和步骤,基本可以解决掉新手问题里的90%,实在不行再搜索引擎或者查阅相关文档。

4.拥有激情

一万个小时法则,如果没有对所从事行业方向没有激情的话,这无疑是很痛苦的,甚至是坚持不下去的。就我个人而言,半阅读相关文档书籍,半实践敲代码,是保持激情的一种方法。前期阶段一定要多敲代码,才能把书上看似懂的知识真正掌握。当到了一定代码量时,就应该review自己以前的代码,阅读相关导论,将书本上的知识与代码对照,就能发现原来知识就运用在这些代码里面、这里可以运用一个设计模式用于解耦提高复用等等等。当看着自己敲的代码实现了自己想要的功能,那喜悦应该是可以转化为动力。

(一把好的键盘应该会提起你的编码欲望,不知道是否适用于每个人,反正我自己敲着青轴的键盘时,那嗒嗒的声音让我很舒服)


5.将自负留在门外

在一个需要终身学习的行业,保持谦虚与好学将是程序员最好的品质。


6. 具有企业家的精神

拥有自己的理念,朝着这个理念努力拼搏。一个产品的成功不是拼搏的终止,而是另一个令你充满激情的产品的开始。


7.测量两次,下刀一次,但测量不要多于三次

好的程序员80%的时间用来思考问题的算法,20%的时间用于编码(开始一个未接触过的新项目的情况)

好的做法是,先思考,计划并研究,有了思路再开始写代码。写过一段时间再回顾看看计划是否需要作出哪方面的调整,要避免第2点的情况。如此循环。

扫描二维码关注公众号,回复: 4242053 查看本文章



原文见:http://www.techrepublic.com/blog/software-engineer/seven-traits-of-effective-programmers/

猜你喜欢

转载自blog.csdn.net/walkeryudev/article/details/73699769