漫画:优秀的程序员具备哪些属性?

简介: 漫画:优秀的程序员具备哪些属性?

很多人问我,你是一个优秀的程序员吗?


我还差得远,但我在朝这个目标努力。


那么,怎样才能成为一个优秀的程序员呢?


优秀的程序员往往具有几方面的特点,这些特点里有的更重要,有的作用略低,我以个人的见解,为这些特点从低到高划分了5个星级。


1.兴趣


微信图片_20220421110214.jpg


重要程度:

微信图片_20220421110217.jpg微信图片_20220421110219.jpg微信图片_20220421110222.jpg微信图片_20220421110225.jpg微信图片_20220421110227.jpg


毋庸置疑,无论是IT还是其他领域,兴趣都是成功的第一推动力。


或许有人会问了:我对所有正经事都没兴趣,天生就喜欢吃喝玩乐,那我该怎么办啊?


没办法,对自己狠一些吧,想一想努力事业可以赚到钱,赚到的钱可以让你更好地吃喝玩乐。

2.逻辑思维能力


微信图片_20220421110230.jpg

重要程度:


微信图片_20220421110232.jpg微信图片_20220421110235.jpg微信图片_20220421110236.jpg微信图片_20220421110239.jpg微信图片_20220421110241.jpg微信图片_20220421110245.jpg微信图片_20220421110248.jpg

作为一个程序员,逻辑思维主要体现在两个方面:业务逻辑和算法。对于前者,只要用心思考,实现清晰的业务逻辑并不是多难的事情;但算法却不是一朝一夕就能掌握。


不过请放心,如果你不是一名Geek,不是一名算法工程师,不是一名ACM参赛者,那么算法对你而言并不是至关重要。笔者有一位架构师朋友在华为拿着70W+的年薪,我和他聊起快速排序的问题,他居然说不出快速排序的基本原理......


3.记忆力


微信图片_20220421110251.jpg

重要程度:


微信图片_20220421110253.jpg微信图片_20220421110256.jpg微信图片_20220421110257.jpg微信图片_20220421110300.jpg微信图片_20220421110301.jpg微信图片_20220421110303.jpg微信图片_20220421110305.jpg微信图片_20220421110307.jpg

记忆力对程序员重要吗?或许有些人会不以为然,其中包括当初的我:编程是一门灵活的学问,怎么能靠死记硬背呢?


当然不是死记硬背,但是记忆力有时候真的很重要。你写过的一行代码,你阅读过的一篇博文,你听过的一场技术分享 ...... 都是一笔需要牢记的财富。


有人问了:我天生就记性不好,我该怎么办?


好记性不如烂笔头,只有勤做笔记,用“外存”弥补“内存”的不足吧。


4.自制力


微信图片_20220421110310.jpg

重要程度:


微信图片_20220421110312.jpg微信图片_20220421110314.jpg微信图片_20220421110316.jpg微信图片_20220421110318.jpg微信图片_20220421110320.jpg

无论做什么行业,自制力都是一项很重要的素质。兴趣固然是第一驱动力,但是人很难对一件事情永远保持着浓厚的兴趣,尤其是这件事变成职业以后(少数大神除外)。


正如最近流行的一句话:业余八小时做什么,决定了你的未来成就。保持良好的自制力,加上好的学习方法,可以让程序员一天天进步。不用太长时间,只需一两年,自制力够好的人就会比一般人高出不止一个档次。



5.运气


微信图片_20220421110322.jpg

重要程度:


微信图片_20220421110325.jpg微信图片_20220421110326.jpg微信图片_20220421110329.jpg微信图片_20220421110331.jpg


运气重要吗?可能有的人会不屑。笔者认为,对于一个刚出道的新人来说,遇上一个好的工作机会或是一个好的导师,绝对可以让人少走几年弯路。但是,随着人的实力增长,对运气的依赖程度会渐渐下降,直到他自己成为技术大牛以后,此人反而变成了别人的运气。


用金庸的武侠小说举个例子:令狐冲遇上风清扬,对于令狐冲来说是天大的运气,因为令狐冲实力太弱,风清扬可以给予他最好的指点。但设想如果东方不败遇上风清扬,并不会得到多少收获,因为东方不败已经足够强大,反而会看不起风清扬。


微信图片_20220421110333.jpg


有人问了,我运气不好,又没有实力,我该怎么办?


请放心,看到这篇漫画的朋友,运气都不会太差。


除了以上总结的五个方面,优秀的程序员还应该具备一定的沟通能力、业务知识、耐心细心、强壮的身体、颜值等等,在此就不逐一阐述了。


关于这几方面的重要性分析,仅仅是笔者的个人看法,诸位有更多的想法,欢迎留言讨论。

相关文章
|
存储 安全 编译器
[笔记]读书笔记 C++设计新思维《一》基于策略的类设计(下)
[笔记]读书笔记 C++设计新思维《一》基于策略的类设计(下)
|
28天前
|
Java 程序员
在Java编程中,关键字不仅是简单的词汇,更是赋予代码强大功能的“魔法咒语”。
【10月更文挑战第13天】在Java编程中,关键字不仅是简单的词汇,更是赋予代码强大功能的“魔法咒语”。本文介绍了Java关键字的基本概念及其重要性,并通过定义类和对象、控制流程、访问修饰符等示例,展示了关键字的实际应用。掌握这些关键字,是成为优秀Java程序员的基础。
22 3
|
6月前
|
算法 测试技术
代码之美:从功能实现到艺术创造
【4月更文挑战第30天】 在编程的宇宙里,每一行代码都承载着逻辑与功能的严谨性,但在这背后,隐藏着一种创造力与美学的追求。本文将探讨如何将日复一日的编码工作转变为一种技术艺术形式,揭示代码美学的内涵,以及如何在保证功能性的同时提升代码的审美价值。
|
6月前
|
算法 程序员 UED
探索编程之道:从功能实现到艺术创造
【2月更文挑战第18天】 在数字世界的构建中,编程已不仅仅是逻辑与算法的堆砌,它正逐步演变成一种创造性表达的手段。本文将探讨编程从基础的功能实现向高级的艺术创造的转变过程,分析编程者如何通过技术深入、创新思维和持续实践,提升其技艺至艺术境界。我们将审视几个关键要素——技术的深度理解、设计的美学融入以及代码的工艺精神,并讨论它们如何共同作用于编程实践中,以培养出能够编织数字世界之美的编程艺术家。
|
安全 Java C++
[笔记]读书笔记 C++设计新思维《一》基于策略的类设计(上)
[笔记]读书笔记 C++设计新思维《一》基于策略的类设计
|
前端开发 JavaScript 程序员
程序员祝福圣诞快乐的方式(内涵完整代码)
程序员祝福圣诞快乐的方式(内涵完整代码)
180 0
|
架构师 测试技术 程序员
【号外】-一个高效程序员的45个习惯总结版-文末脑图
【号外】-一个高效程序员的45个习惯总结版-文末脑图
【号外】-一个高效程序员的45个习惯总结版-文末脑图
|
编译器 数据库 C++
领悟面向对象就离开发应用不远了(类提高)有你对面向对象的所有疑问,爆肝1w字
领悟面向对象就离开发应用不远了(类提高)有你对面向对象的所有疑问,爆肝1w字
152 0
|
Java C++
保守VS开放?看清封装对象属性 | 带你学《Java面向对象编程》之四
高楼万丈,起于平地。本节通过对比正反几个实例剖析了封装对象属性的必要性,介绍了进行封装的基本原则。
保守VS开放?看清封装对象属性   |  带你学《Java面向对象编程》之四
|
人工智能
带你读《少儿人工智能趣味入门动画与游戏编程一本通》之二:角色的基础:“运动”“外观”“声音”模块
Scratch是图形化的编程语言,它具有学习环境趣味性强、操作简单且直观等特点,很好适合6-12岁的孩子学习。本书是立足于Scratch 3.0版本的少儿编程入门书,能让孩子轻松愉快地掌握编程技能,锻炼和提高思维能力和创造力,为迎接人工智能时代的到来做好准备。本书以对Scratch中积木块的分类讲解作为主线,并将编程的核心思想融入大量精心设计的案例,让孩子在实际动手操作中更直观、更深刻地理解不同积木块的运用。本书对积木块的功能和用法解释详尽,语言通俗易懂,能够减少孩子对编程的畏惧心理,没有编程基础的家长也能陪伴孩子一起阅读,在融洽的亲子互动氛围中,自信、愉快地完成学习。