优秀程序员应具备的15个特性

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了优秀程序员应具备的15个特性相关的知识,希望对你有一定的参考价值。

1、分享

        尽可能地使用开源,并且如果有能力的话也可以把自己的成果分享给大家。整个社会的智慧结晶肯定比一些大公司自管自闭门造车要好。

2、公平的心态

        不要以为你的选择就是唯一能奏效的,试试其他技术、框架、方法和建议,也许其他的选择比你原先的好也未可知。要用开放的心态去对待任何方法和抉择。

3.不可攻击他人

        如第2条所言,不要因为别人恰巧使用的是.Net、Java或php这些技术就随意攻击他们(我在这方面有过教训)。

        有时,这些你看不上眼的技术或许要比你想象的更有用。只要你怀着一种平和的心态,你就可以从他们那里学到很多东西,殊不知,海纳百川,有容乃大。

4.解决自己的烂摊子

        自己的代码自己负责。永远不要指望QA能帮你找到所有的bug。经常全面地测试自己的代码。

5.不是自己的东西不要拿

        得到许可后方可使用,偷偷用了事后再声称自己无辜是可耻的。

6.伤害了别人要说对不起

        代码审查是一个相当不错却又很少使用的主意。指导经验比你少的程序员,有助于整个团队的发展。但是切记不能公开批评他人。指导并不意味着贬低别人。在得到指导时,有的人会接受,有的人则不会。

        要记得有时候,从那些水平不及你的人身上,你也能学到很多东西。绝对不能门缝里看人——把人看扁了。

7.有备而来

        在正式开工写代码之前要先做个彻底的了解。做原型、从网上搜索实例、和其他也做这个的人讨论或者先练练手。

        什么都不知道就着手构建你从未尝试过或使用过的东西简直就是“自作孽不可活”。

        如果打一开始就有线索有思路,得到的结果可能会更好更有成效。

8.拿得起放得下

        不要畏惧替换、重写、重构甚至是直接删掉代码。有时候,如果碰到可留可不留的代码,直接扔掉就是了。

        不要对你的代码死缠烂打,不肯放手。

9.舒适的工作环境

        对,要想程序员能高效编程,一个好的工作环境是不可或缺的。

        一把舒适的椅子,一个安静的工作场所、一代高配置的电脑以及各种有助于编程的工具都应该配备齐全。经理避免一些琐事去打搅到手下的程序员。

        而作为一个程序员,也不必忍气吞声、给人做牛做马,如果老板对你不好,换个就是了。

10.保持生活的平衡

        学习、思考、绘画、唱歌、跳舞、工作、玩耍,每天都应该活得丰富多彩。

        我非常欣赏谷歌的工作方式,它会建议你花上20%的时间用来思考任何你认为值得做的事情。此外,谷歌还提供专门的休息室、游戏房和其他一些能用来放松自己的场所。

        因为编程是一种高强度的脑力活动,有时候你的大脑真的非常需要稍作休息。不要盲目地不管不顾自己的身体,“工作狂”绝对是不可取的生活方式。

每周工作80小时,听上去很牛掰,但是你的工作效率肯定要打一个问号,甚至一不小心会犯个不可饶恕的小错误然后前功尽弃。

11.下午打个盹

        就算我们把一天24个小时全都用来写代码,成果也不会更多。停下来、回家、然后打个盹。很多问题都是在我回家的路上解决的。有时候,我正在开车,或者是清早一觉醒来,答案就灵机一动出现在我脑子里。

12.不要闭门造车

        交流对于我们相当有好处:读读博客、学学新语言和框架、讨论讨论话题、看看同行在做什么。自扫门前雪,绝对成就不了一个优秀的程序员。闭门造车型的程序员终将被时代的潮流所淘汰。

13.保持好奇心。

        我们就像一粒粒种子,因为有着对外面世界的好奇,才能从土壤中探出头来,亲眼见证这个世界。

        每天我们都能看到有新鲜事物出现在编程世界里。带着“Why”去一探究竟。每天都学点新知识,扩宽自己的视野,刷新自己的技能,让自己跟得上时代前进的步伐。要是你觉得编程枯燥又乏味,那么也许你可以考虑换一行。

14、不要维护那些费力不讨好的代码

        所有事物都会逐步趋向衰退灭亡,谁都无法抵抗。

        代码也会慢慢发旧直至死亡。这时候你能做的就是把它们埋葬,然后再重新写过。不要为了省钱而继续维护那些费力不讨好的代码!

15、看

        还记得《雌雄大盗》这本书吗,我们学到的第一件事就是——“看”。

        如果你不自己亲自去试试,那么你永远也学不到东西。我在编程中学会的所有东西全都来自于我的亲身实践。

        每天早上,我会广泛浏览网站,看看我们的编程世界有什么新鲜事情发生。

        当你已经有了5年的工作经验,在你眼中编程其实就是小菜一碟了。

以上是关于优秀程序员应具备的15个特性的主要内容,如果未能解决你的问题,请参考以下文章

优秀技术Leader应具备的六项能力

程序员老司机谈到的一位优秀程序员应该具备的十个优秀的习惯

一个优秀的程序员所具备的14个品质转载

优秀程序员必备的四项能力

一个优秀的前端工程师应具备哪些技能?

一个优秀的程序员应该具备哪些素质?