我经常把程序员比喻成为篮球队员,为什么呢?在篮球场上虽然都是为最终得分努力,但每个人分工不同,大家是根据自己的特点和优势负责不同的位置,比如大前锋,中锋,控球后卫等。而一个人再厉害,没有团队协同是打不好一场球的。换句话说,几乎没有哪一个项目是一个人完成的,作为程序员,谁都不需要“猪一样的队友”,谁都希望自己是一个被认可的“优秀的程序员”。

另外不要纠结于“程序员”这个称呼。软件从业人员分为初级程序员、高级程序员、系统分析员,系统架构师,测试工程师五大类。一般我们把程序开发设计人员及程序维护测试人员都归为程序员。
那么,成为一个优秀的程序员,你应该怎么做?简单来说,先做好这5点。

1.先进行实验成为本能反应
编译器和运行环境通常能比人更快地解释一个问题。一个优秀的程序员在拿着问题去向别人寻求帮助之前,会自己试试看并判断方法是否有用,而不是直接找一个高级程序员问“我这么做有用吗?”。

2.对待代码和设计不情绪化
代码就像纸巾:它有用你就用,没用了就扔掉。几乎我们所有人都认为代码复用( code-reuse )很重要,尽管确实如此,但是这也不意味着要像养孩子那样去对待代码。代码没有感觉也不会在乎,它们会像法兰克斯坦( Frankenstein )怪物那样攻击你。代码只是一堆字节,是一种责任( liability )。

3.对编程有激情
很多程序员干这一行只是为了挣钱,如果有更好的职业,他们会毫不犹豫的辞掉程序员的工作。而优秀的程序员热爱编程,喜欢钻研代码中的问题,他们感到能指挥电脑来帮助人们和自己解决现实生活中的问题是一种神奇的能力。当遇到问题无法解决时,他们会茶不思、饭不想,无法入睡。

4.君子善假于物
优秀的程序员知道如何能更高效的完成任务,如何更能有效的解决问题。当遇到问题时,不钻牛角尖,善于利用外部工具解决自己的问题,特别是能熟练应用搜索引擎。初级的程序员只会使用百度和百度知道搜索问题,而高级的程序员/优秀程序员使用谷歌和Stack Overflow或者MSDN forums这类网站寻找更优秀的答案。

5.关注非技术方面的知识
不称职的程序员喜欢临时抱佛脚,只有在需要的时候才去学习。而优秀的程序员会去主动学习各种相关知识,对各种知识来源都有一种开放的心态,而不会象有的人那样固步自封。 而且,并不只局限在跟职业相关的技术类知识,同时他也会学习任何感到有趣的知识,比如沟通技巧等。

想要成为“优秀的程序员”,首先做好这5点,虽然技术和职素的提升不是一朝一夕,成为高手没有捷径,天道酬勤。

想成为一个优秀的程序员,首先做到这5点相关推荐

  1. 如何成为一个优秀的程序员

    本文给出了十五个评定软件开发人员的标准,可以帮助程序员朋友从一个好的程序员成为一个优秀的程序员,和大家共飨! 怎样评定一名软件开发人员?这是一个颇为奇怪的问题.现在已经有了很多的理论和形式来做这件事, ...

  2. 【知乎】怎么成为一个优秀的程序员,而不是一个优秀的码农?

    怎么成为一个优秀的程序员,而不是一个优秀的码农? 9 条评论 分享 默认排序按时间排序 98 个回答 3844赞同反对,不会显示你的姓名 萧井陌 微信公众号:炼瓜研究所 技术社区 - 3844 人赞同 ...

  3. 程序员:要想成为一个伟大的程序员

    程序员:要想成为一个伟大的程序员,首先,要有钱,没钱等着饿死,其次,需要的可不仅仅是能够编写出可以正常运行的代码.Justin James给出了能够成为业内顶尖高手的程序员应该具有的几个典型特质. 要 ...

  4. 如何成为一个优秀的程序员_如何成为一名优秀的程序员

    如何成为一个优秀的程序员 by Amy M Haddad 通过艾米·M·哈达德(Amy M Haddad) 如何成为一名优秀的程序员 (How to be a great programmer) Wh ...

  5. 如何成为一个优秀的程序员?

    目录 1 靠谱的程序员 2 解决问题的能力 2.1 快速的定位 2.2 深入分析 2.3 取舍解决 3 团队协作能力 3.1 第一种模式:润滑剂模式 3.2 第二种模式:全责模式 3.3 第三种模式: ...

  6. 精通C语言Java怎么样_作为一个优秀的程序员,真的需要精通C语言吗?

    从事嵌入式开发多年,使用C语言开发已经超过十个年头,除了C语言还用C++,java,python做过项目,程序员的优秀编程语言仅仅占据一部分,而且也不会只是针对C语言,现在很多的编程高手也不懂的C语言 ...

  7. 怎样做一个优秀的程序员?这10个问题ChatGPT这样说 ……

    本文目录 1 怎样做一个优秀的程序员? 2 怎样成为优秀的架构师? 3 怎样写容易阅读的代码? 4 怎样做项目管理? 5 怎样学习计算机程序设计? 6 怎样提升个人影响力? 7 怎样提升认知? 8 程 ...

  8. 一个优秀的程序员应该如何提高工作效率?

    当我们评价一个程序员是否优秀时,要从多个方面进行评估. 专业技能.专业知识.创造力.经验,这些都是重要的因素.当然,还有他们的工作态度.工作效率和工作质量.如果程序员的工作是没有效率的,那就意味着他们 ...

  9. 你在成长为一个优秀的程序员吗

    在软件开发过程中,你经历的每件事情都会潜移默化地影响着你.随着时间的流逝,年纪的增长,对于程序开发技术(相同/或者相关能力)以及自身的理解也会不断沉淀,这些最终也会帮助你达成目标--成为一名优秀的程序 ...

最新文章

  1. python exec
  2. ajax中json和文本的区别,json格式字符串--json对象 【ajax_responseText】重点
  3. 单位银行结算账户如何变更
  4. Python:序列的copy() 方法和 copy 模块
  5. 【问链财经-区块链基础知识系列】 第三十九课 EOS与ETH体系结构比较全解析
  6. float排版c语言,如何解决因float带来的排版问题?
  7. python代码生成可执行程序_Python—脚本程序生成exe可执行程序(pyinstaller)
  8. 【原型设计】实用节:Axure RP9 的一些常用的快捷按键组合操作
  9. 浙江高级会计师评审计算机要求,浙江2020年高级会计师评审申报论文要求
  10. 【连载】如何掌握openGauss数据库核心技术?秘诀二:拿捏执行器技术(2)
  11. 关于json包爆红我有话说
  12. yolo如何降低loss_YOLO训练中的问题与怀疑
  13. ArcGIS Engine开发之旅01---产品组成、逻辑体系结构
  14. 分布式系统下数据一致性
  15. 从已知身份证号码中提取生日和性别
  16. 如何在android studio中调用mumu模拟器
  17. 马化腾:谈谈我创办腾讯这些年
  18. vba 发送邮件 html,使用VBA实现发邮件功能
  19. ESX4 安装前的考虑
  20. 清除COOKIES有什么好处

热门文章

  1. OpenGL中gl,glu,glut的区别
  2. 流畅的Python学习
  3. 在键盘上同时按3个键有时会有一个键不起作用是什么原因?
  4. 获取控件在屏幕上的xy轴位置
  5. 虚树——P2495 [SDOI2011]消耗战
  6. python画图怎么调色_数据可视化Seaborn从零开始学习教程(二) 颜色调控篇
  7. 记第一次写出自己的简单python爬虫:GCZW3
  8. 1张上海各阶层本科生真实工资表流出,戳穿了对年轻人最残忍的骗局
  9. 【方案分享】茶叶品牌小罐茶2020品牌营销推广方案.pdf(附下载链接)
  10. linux使用iscsi配置共享存储