优秀程序员五大特质

2024-09-04 11:18
文章标签 程序员 五大 优秀 特质

本文主要是介绍优秀程序员五大特质,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

很多人都觉得编程是一个比较特殊的职业,整天的加班,想不起来陪媳妇或陪老公。还整天自嘲为码农,屌丝等等。这是传统意义上的一个程序员的真实写照,但优秀的程序员都具备什么特质那?

图0:优秀程序员五大特质

优秀程序员五大特质

对编程特别喜欢,听到说编程的坏话就会急眼

真正的编程的高手,从骨子里是非常认可编程这份职业。而且中间不会有转行业这个想法,而且会作为一辈子的事业忠诚的对待。别看他们自嘲为码农或者搬运工,但是你真要说编程这个职业不行,真会给你急眼。会以工匠精神对待这份职业,都会的认真对待遇到的每个知识点,兢兢业业,持之以恒。

之前在看到一个帖子,有个学美术的自称学了半年就能独立做游戏,由此这结论编程也就这么回事。结果引起了一群高手的狂轰滥炸,在追问下这哥们就是利用cocos2d-x游戏引擎做的开发,被大家一顿讽刺,最后直接不说话了。有个好心的哥对美术哥指出。大家之所以喷你是因为你没有站到尊重别人的角度去思考问题。有的人是真的对编程充满了热爱,你的话相当于侮辱了他们,换位思考,如果别人侮辱你,侮辱你热爱的行业,你会不会生气。如同别人说你家孩子这也不好,那也不好,你能受得了?

图1:优秀程序员五大特质

基本上都有职业病,眼疲劳,颈椎病是最常见的

任何一种职业都存在不同程度的,对身体的损伤。程序员由于整天盯着电脑,长期坐着。职业病就该出来找你麻烦了,水平越高,职业病表现的越明显。水平的高低和付出的时间是成正比的。所以建议热爱这份职业的或者为了养家糊口进入编程行业的,多去参加一些户外的运动,特别是羽毛球,对颈椎的恢复效果不错。
因为热爱所以即使会得这么多的慢性病,但从未想着转行,毅然选择坚守,是真爱。

图2:优秀程序员五大特质

极其注重提炼编程思想,语言以工具对待

编程是一个认知知识技能的过程,对同一个事物的理解,随着知识层次的提高感受又不同。目前存在各种的编程语言,各种项目千差万别。所以想靠一种语言打天下或者掌握一个项目技巧就想一通百通很难。而编程思想就能概括一些场景,就能以抽象模型的方式提炼出来。

特别一些架构师,未必真是什么语言都懂但是能通过抽象模型,提炼融合成一个系统,让这个系统能经得住各种环境的压力测试,并且能够真正转化为到用户手里能用的产品,这仅仅是靠掌握几种语言是办不到的。说到这里并不是强调编程语言不重要,作为一个优秀的程序员必须有一个特别熟练的语言,这是最基本的基础。有了一种熟练的语言再去切换到别的语言,触类旁通就比较容易。

在学习过程中不要过份对于一门语言推崇,可以适当分散点时间提炼编程思想。多去研究一些设计模式,工程思想。

持续优化代码,对写的代码不停的打磨,直到自己满意

优秀的代码都是经过千锤百炼出来的,在软件行业叫代码重构,实现同样的一个功能不停的找到更优的解决方案。这点在google的chromium代码更新速度就可以看的出来,看代码的更新绝不是仅仅增加某个功能,对于之前的老代码有了新的想法就会立即尝试,这点可能和我们平常开发一个工程软件有点相悖,这要在建立在对代码超强的驾驭能力的基础之上。google集合了全球2000多名工程师在做一个浏览器项目,并且这些工程师分散在全球各地,沟通是个问题,貌似很多不可能的事情在这都不是问题,对google确是个例外。在google环境下锻造出来很多牛逼的工程师绝非偶然,环境氛围感染着大家去这么做。

浅尝辄止绝不会让自己磨练成高手,让自己做的每一件事情,每一个细节,都尽力做到最好,才会锻造成精品。

图4:优秀程序员五大特质

不排斥新技术,不停的在新技术中提炼自己专业技能,活到老学到老

很多程序员都感叹技术更新太快,软件行业本身是一个更新速度比较的领域。真正的高手从来都不排斥技术的更新,反而特别关注一些前言的新技术,为随时转变到新技术作准备。不断的让自己的之前的技术认知融汇到新的技术中去,也不会因为自己年龄增加而停止对新技术的学习。

在国外一些比较大的公司里,一些四十多岁的工程师还是大有人在,在中国都被称为怪物了,会被人认为这么大年纪了还在苦逼的写代码,没办法中国的软件人才的更新换代太快了。一批批的毕业生走向编程界,其实一些真正技术公司对于一些年龄大的技术人员持欢迎的态度,经验也是本钱,家有一老如有一宝,年龄绝对不是自己不去进取的理由。

这篇关于优秀程序员五大特质的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1135873

相关文章

LabVIEW程序员是怎样成长为大佬

成为一名LabVIEW编程领域的“大佬”需要时间、实践、学习和解决复杂问题的经验。尽管LabVIEW作为一种图形化编程语言在初期可能相对容易上手,但要真正成为精通者,需要在多个层面上深入理解。以下是LabVIEW程序员如何逐步成长为“大佬”的路径: 1. 打好基础 LabVIEW的大佬们通常在初期会打下非常坚实的基础,理解LabVIEW编程的核心概念,包括: 数据流编程模型:Lab

如何成为一个优秀的测试工程师

链接地址:http://blog.csdn.net/KerryZhu/article/details/5250504 我一直在想,如何将自己的测试团队打造成世界一流的团队?流程、测试自动化、创新、扁平式管理、国际标准制定、测试社区贡献、…… 但首先一点是明确的,就是要将每一个测试工程师打造成优秀的测试工程师,优秀的团队必须由优秀的成员构成。所以,先讨论“如何成为一个优秀的测试工程师”,

程序员必备心理学——心流

心理学之心流 前言一、“心流”是什么?二、心流的好处二、如何进入心流心流状态的四个阶段第一个阶段:挣扎第二个阶段:放松第三个阶段:心流第四个阶段:巩固 进入心流的技巧 总结题外话 前言 你是否常常感觉自己明明学习了一整天,但是就是感觉没有太多的收获。这个时候除了你的学习方向等问题之外,也可能是你的学习方法太低效了。作者本人就经常有这种情况,好在偶然间在b站刷到一个大佬的这个心

程序员都在使用的画图工具

大家好,我是袁庭新。 程序员都在使用的画图工具,你一定没用过这款画图工具吧!我教程中的架构图都是用它来画的。 比如我编写的RDB工作原理图就是用draw.io绘制的,如下图所示: 再例如Redis集群故障恢复原理图我也是通过draw.io工具绘制的,如下图所示: 是不是觉得draw.io绘制的图形特别简洁、美观。它的官网是: https://www.drawio.com dra

开放式蓝牙耳机哪个品牌好用?盘点五款超优秀的开放式耳机!

开放式蓝牙耳机现在挺受欢迎的,它们最大的好处就是不塞耳朵,戴着舒服,特别适合长时间佩戴。而且,这种耳机能让你在听音乐的同时,还能听到周围的环境声,这样在外面运动或者骑车的时候就更安全。音质方面,现在的开放式耳机也做得越来越好,有些高端款式还有特别的技术来减少漏音,保护你的隐私。但是现在市场上的开放式耳机品牌太多了,很多人不知道怎么选?为了帮助您在众多选项中做出选择,我根据个人经验挑选了一些表现良好

GitHub:代码是程序员沟通最直接的手段

如果不是 Andreessen horowitz 的投资,估计 GitHub 很难被福布斯、CNN、纽约时报等传统媒体注意到。普通大众之前不了解这个工具,是因为它距离记者的世界太远了——GitHub 是一个程序员所使用的托管项目的服务。 但在一些程序员眼里,它不仅是托管项目的地方,还是“开源”项目的大本营,而且是提高程序员“技术水平”和“技术品味”的地方,更是一个程序员社交的地方。

黑马程序员---银行业务调度系统

模拟实现银行业务调度系统逻辑 需求分析: 银行内有6个业务窗口,1 - 4号窗口为普通窗口,5号窗口为快速窗口,6号窗口为VIP窗口。 有三种对应类型的客户:VIP客户,普通客户,快速客户(办理如交水电费、电话费之类业务的客户)。 异步随机生成各种类型的客户,生成各类型用户的概率比例为:         VIP客户 :普通客户 :快速客户 =  1:6:3。 客户办理业务所

黑马程序员---空中网面试题

空中网4k/5k月薪挑选大四实习生的线程题     两年前,我们一个大四的学员去应聘空中网的实习生职位,空中网只给他出了三道线程题,拿回家做两天后再去给经理讲解,如果前两题做好了给4k月薪,第三道题也做出来的话就给5k的月薪。这样的实习薪水和招聘要求,不需要有工作经验的限制,纯粹是技术功底的比拼和考核,而不像许多其他公司非要招两年工作经验的人,逼得那些刚毕业和未毕业的大学生不得不去撒谎,不得不去做

黑马程序员---线程并发库

软件包 java.util.concurrent 在并发编程中很常用的实用工具类。 请参见:            描述 接口摘要BlockingDeque<E>支持两个附加操作的 Queue,这两个操作是:获取元素时等待双端队列变为非空;存储元素时等待双端队列中的空间变得可用。BlockingQueue<E>支持两个附加操作的 Queue,这两个操作是:获取元素时等待队列变为非空,以及

黑马程序员---多线程

TraditionalTread 传统线程技术回顾 创建线程的两种方式: thread3中,同时创建了Thread的子类和Runnable,那么会优先执行Thread的子类,因为Runnable的代码被当做参数传到了Thread类里,Thread子类的run方法又覆盖了父类的方法,所以会执行Thread子类的代码。 package cn.itcast.heima;public class T