成为优秀程序员的十个有效方法

标签: 职场励志 | 发表时间:2013-09-09 01:16 | 作者:任丰华
出处:http://www.yixieshi.com

  优秀的程序员是在穿过一条单行道的时候还会往两边看的人。

  作为一个IT行业的软件程序员,每天驱使我们日复一日的辛勤工作的,是来自我们对编程的兴趣和激情。但是要让编程变得始终有趣,我们必须学会坚持某些成为优秀程序员的基本原则。

  我并不是要写出一些咒语,你照着执行就可以成为一个优秀程序员了。我的目的是想记录下我学习到的和用过的一些有用的经验,它们帮助我获得比较好的结果。对于优秀程序员是没有明确定义的,这里我们指的是那些创造出了优秀IT解决方案的以及帮助这个行业增长的那些人。

657a3ba64f0fb90464c3c00bd572c858.jpg

   0. 掌握基础

  对于任何行业任何工作来说,融会贯通是获得成功的关键。一个人想要成为优秀程序员,就必须有坚实的基础。核心理念的理解会帮助你用最好的方法设计和实施出最完美的方案。如果你感觉到不能掌握核心的计算机科学或者某个编程语言的知识点,现在开始回顾基础一点都不晚。

   1. 开始为你写过的代码贴上标签(怎么做,做什么)

  我发现优秀的程序员和普通程序员之间有一条明显的分界线,优秀程序员渴望深究每行代码做了些什么,以及如何实现的。有那么一小群人,他们一定要弄懂每一行代码。我知道如果时间非常紧张的时候,我们经常不能够遵循这个原则,仅仅写出些代码,知道它实现了需要的功能。如何处理这种情况又是另外一个话题,但是作为一个程序员,我们经常要尽可能深入探索。相信我,随着时间的推移这会变成一个习惯,之后每次你都会不知不觉的这样做了。

   2. 帮助他人,你可以学到更多

  许多人都有个共同特点,只有当他需要帮助的时候,他才会求助于论坛或者群。优秀程序员不同之处在于他们会经常浏览论坛去帮助他人。相比较于靠别人帮助解决问题,他们帮助他人让自己学到更多。在一个团队中也是一样,帮助他人解决问题收获更多。相信我,了解他人的问题,思考并最终提供解决方案吧,你会比之前学到的更多。

  3. 写简单易懂,有逻辑性的代码

  正如KISS原则(保持短小精悍)适用于生活的方方面面一样,它也适用于编程。尽量写有逻辑的代码,避免复杂化。有时人们写复杂的代码仅仅是为了展示他们有能力写出这样的代码。我的经验告诉我,简单而富有逻辑的代码非常的好,会产生的问题更少,也更容易扩展。我记得一句话:

  好的代码本身就是最好的文档。当你想要加注释的时候,问问你自己,“我能如何改进我的代码,才能不写注释也读得懂呢?”

  4. 花更多的时候分析问题,你将会花更少时间去解决问题

  花更多的时间理解和分析问题,然后再设计方案吧。你会发现剩下的事情很容易了。设计不是说要用建模语言和工具,可以是仅仅看看天空在脑子里构思。那些在遇到问题就开始敲代码的人往往会最终偏离需求。

  如果你洗澡的时候不能理清整个程序的结构,那么你还没准备好开始编程。 – Richard Pattis

  5. 成为第一个检查你的代码的人

  虽然有一点点难,但试着在其他人修改你代码之前修改它,随着时间的推移,你会写出几乎没有bug的代码。对你的代码做没有任何偏见的检查,也不要犹豫让其他人来检查你的代码。和其他优秀的程序员一起工作,接受他们的意见能够帮助你也成长为一个优秀的程序员。

  6. 不要迷失在快速更迭的科技世界

  在IT行业中,我经常遇见许多人,他们对现在的工作不满,甚至离开它去追寻新的工作,理由是因为他们想要学习最新的科技。我们每天听到的都是新工具、接口、框架,能让程序更简单,速度更快。这在科技世界中司空见惯并会一直如此。但是最基本的最核心的科技变化比那些框架、工具和接口的变化小得多。就像大海,大海表面上波涛翻滚,但大海深处却相当平静,而那里才是水生生物生存的地方。所以将你自己置身于核心技术的大海深处吧。举个例子,在Java企业级应用中,每个星期都会出现新的框架,但是核心的技术是不变的,譬如基于客户端-服务器端的请求,MVS模式,filters/servlets/JSP,数据源绑定,XML解析等等。所以要花功夫去学习核心概念,而不是去担忧日新月异的框架和工具的出现。相信我,有了核心技术的基础,你会发现学习新的框架,工具以及接口变得更容易了。

  7. 应急方案不会持续很长时间

  很多时候软件师们会采用应急方案(可能是时间不够,可能是问题理解不透彻或者是缺少经验)。但是这样往往带来的结果是,代码混乱,缺乏可扩展性和维护性,后来浪费了更多的时间。请在你清楚整个方案后再开始实施。我知道有些情况下应急方案无可避免,就好像,一个人应该说实话,但是你在某些情况下不得不说谎。

  8. 阅读文档

  阅读很多文档是作为优秀程序员的必备习惯之一。可能是产品说明书、JSR、API文档、教程等。阅读文档帮助你获得必要的基础知识,写出更好的代码。

  9. 你可以学习他人的代码

  我接触过一些优秀的程序员,他们在IDE里面一直放着JAVA源代码,并经常在日常工作中阅读和查阅。他们这样做不仅是满足求知的渴望,还从中学习了如何写优秀的程序。阅读和查阅那些你认为可靠的出名的开源代码或者比你资深的程序员的代码,你会写出更棒的程序。(扩展阅读:《阅读优秀代码是提高开发人员修为的一种捷径》)

   最后,我想说的但没有将其列在上面的:不要和他人比较

  和他人的比较往往会造成消极的情绪和不健康的竞争。每个人都有他的长处和短处。扬长避短很重要。我也经常看到一些基础很厉害的程序员范很低级的错误。所以仅仅和自己比较,列举你自己需要改进的地方,并持续改进它。编程是很有意思的事情,享受它吧。

  任何一个傻瓜都能写出计算机能理解的程序,而优秀的程序员却能写出别人能读得懂的程序。

相关 [程序员 有效 方法] 推荐:

成为优秀程序员的十个有效方法

- - 互联网的一些事-关注互联网产品管理,交流产品设计、用户体验心得
  优秀的程序员是在穿过一条单行道的时候还会往两边看的人.   作为一个IT行业的软件程序员,每天驱使我们日复一日的辛勤工作的,是来自我们对编程的兴趣和激情. 但是要让编程变得始终有趣,我们必须学会坚持某些成为优秀程序员的基本原则.   我并不是要写出一些咒语,你照着执行就可以成为一个优秀程序员了.

三个方法让你成为更好的程序员

- - 外刊IT评论
想进入编程这一行业的人开始时总是试图先学会一门语言. 找一个项目或一个小功能软件去做,针对性的学习那些需要完成这个任务必须具备的知识技能. 这种学法让你有了一个学习的环境和目标,逼迫你去具有创造力. 有些最有价值的知识会来自解决那些之前没有人解决过的独特问题. 这个过程是辛苦的,但要的就是你的坚持.

程序员生存定律--升华成高手的可能方法

- - CSDN博客推荐文章
程序员生存定律这系列的目录在这里: 程序员生存定律--目录. 一旦度过了初始阶段,做过了前面说的那些事情,那么一个人算是基本入行了,接下来的目标就非常简单,要在选定方向上成为高手. 高手意味着专业,而在分工无限细化的年代里,专业则是生存、发展好最为重要的一个前提. 我估计如果问100个人“什么样的程序员是高手.

程序员在页面友好性上常犯的5种错误以及改正方法

- - WebHek
我是一个性情乖戾的web用户,但我想这也帮助促使我成为了一名优秀的Web开发人员. 当我看到一个网站上有让人不爽的设计时就会非常的恼怒,一些很简单的东西为什么做不好. 下面是5种常见的可用性方面的错误,以及如何纠正这些问题的方法. 给自己方便,也与人方便,确保自己不要犯这样的错误. 使用表达 submit事件,不要用 click事件;请用表单标签 form!.

有效管理的启发式方法

- -
偏向于行动和决策,而不是计划和共识. 了解您的产品如何在野外使用. 通过专注于您想要实现的结果来向后工作. 通过提出开放性问题来鼓励所有权. 知道如何区分 可逆和不可逆的决定. 确保每份报告都了解团队、组织和公司的首要任务. 即使它不是编码,也要弄脏你的手:. 大多数队友重视它,通常当他们不重视它时,是因为他们没有看到一个表现得很好.

普通程序员、文艺程序员、2B程序员

- 可可 - 宇宙的心弦
希望能引起广大苦逼的正在学或者已经学过c++人的共鸣和会心一笑吧. 如何辨别自己在现实还是虚拟世界.

一种真正有效的大脑锻炼方法

- RZ - Solidot
忘了填字游戏和莫扎特音乐吧,如果你真的想改进推理和解决新问题的能力,每天花几分钟时间做做n-back练习. 在5月28日召开的美国心理学协会年度会议上,密歇根大学的心理学家John Jonides报告了他的发现,每天做n-back练习20分钟,连续20天,能明显改进流体智力标准测试的成绩. 流体智力是指在混乱状态中发现意义(新知识)、解决新问题的能力.

6种编写HTML和CSS的最有效的方法

- Ling:™ patient() - 博客园新闻频道
  写HTML5和CSS3,以及JavaScript,前端开发者有了大大的用武之地. 大家都在用很多的工具和技术来武装自己,以加快前段的开发.   本文分享了6中最有效的方法,希望能提供你的效率,为你节约时间. Dynamic CSS(动态 CSS).   如果你想加速你的CSS代码编写,那么你需要学习并掌握动态CSS.

37种与孩子有效交流的方法

- - 译言-生活点滴
 作者:Steven Aitchison. How often have you asked your kids 'How was school today?' and the reply was 'it was okay!' and that's it. My youngest son just started high school today and my wife and I have been nervous and anxious for him, although we've been careful not to show him this.

10个有效方法让你想不自信都难

- - 5time经典语录网
许多犹豫、放弃、失败,都是源于不自信. 自信是一个人成功的必备心理素质,然而自信也是可以后天培养的. 这里提供10个培养自信的有效方法,让你想不自信都难. 自信确实需要培养,所谓的“培养”,即是说并非朝夕可达. 所以,培养自信的最重要前提就是要具备耐心,如若缺乏耐心就要培养耐心. 没有耐心的话就什么都做不成,更别提什么“自信”了.