记录:程序员,如何定义“优秀”

重要的是这个四个目标:

  • 你创造有效算法的能力
  • 你阅读别人写的代码以及发现其中存在任何问题的细心品质
  • 你的学习和实现新技术趋势并且适应需求的好奇心
  • 最后也是最重要的:你创造了什么,如何创造的?

——了解 计算机科学入门课程

——作为 程序员英语必须得好

——学习 其他编程语言:C#,Java,或者Python,Ruby, PHP

——测试 你的代码 注:学会如何跟踪bugs,创建测试,并且破坏你的软件

——培养 逻辑思维和积累离散数学知识

——培养 算法和数据结构的深刻理解能力 注:了解一些基本数据类型(栈、队列和包),排序算法(快排、合并排序、堆排序)和数据结构(二分查找、红黑树、哈希表),大O表示法等

——培养对操作系统的深刻理解能力

——参与课堂之外的项目 注:创建和维护一个网站,构建你自己的服务器,或者做一个机器人。

——参与大系统(代码库)中的小代码片段,阅读和理解已有的代码,查文档并且跟踪调试。 注:用GitHub来阅读别人的代码或者去贡献一个项目是一种很好的方式。

——和其他程序员一起参与项目 注:这将会帮你提高在团队工作的能力,也使你能够向他人学习。

——锻炼你的算法知识和编程能力

——对数学课程的建议 个人观点:任何忽视这些学科企图将使你进入完全以错误方式学习的平庸程序员的范畴。

……

参考链接:http://blog.jobbole.com/79736/

时间: 2024-10-11 23:08:00

记录:程序员,如何定义“优秀”的相关文章

为什么优秀的程序员也是优秀的设计师

在高科技行业中,我听过很多伟大的开发人员声称对设计一无所知.他们将设计当作是一个神秘的世界,一个编程世界之外的世界.他们觉得他们永远无法"干"设计的工作,因为他们根本没有关于这方面与生俱来的能力.但是请恕我不敢苟同.好的编程也是不错的设计.因为,好的代码是经过精心设计的代码.任何能写出好代码的程序员其实也是在写经过精心设计的代码.定义什么是优秀代码的原则惊人地相似于何为优秀设计的原则.不信的话,请看Dieter Rams的Ten Principles of Good Design,不知

优秀程序员因何而优秀?

这些年我曾和很多程序员一起工作,他们之中的一些人非常厉害,而另一些人显得平庸.不久前因为和一些技术非常熟练的程序员工作感觉很愉快,我花了一些时间在考虑我佩服他们什么呢?什么原因让优秀的程序员那么优秀,糟糕的程序员那么糟糕?简而言之,什么原因成就了一位优秀的程序员呢? 根据我的经验,成为一个优秀程序员同年龄,教育程度,还有和你赚多少钱没有任何关系.关键在于你的做法,更深入地说,就是你的想法.我注意到我所钦佩的程序员都有一些相似习惯.不是他们所选语言的知识,也不是对数据结构和算法的深入理解,甚至不是

强大的程序员不一定优秀,但优秀的程序员一定会变的强大

1.Care about your craft  关心你的技艺2.Think about your work  思考!你的工作3.Provide options,don't make lame excuses  提出各种选择,不要找蹩脚的借口4.don't live with broken wendows 不要容忍破窗户5.be a catalyst for change 做变化的催化剂6.remember the big picture 记住大图景7.make quality a requir

黑马程序员—10-宏定义、枚举、typedef

l 预处理指令简介 u C语言在对源程序进行编译之前,会先对一些特殊的预处理指令作解释(比如之前使用的#include文件包含指令),产生一个新的源程序(这个过程称为编译预处理),之后再进行通常的编译 u 为了区分预处理指令和一般的C语句,所有预处理指令都以符号"#"开头,并且结尾不用分号 u 预处理指令可以出现在程序的任何位置,它的作用范围是从它出现的位置到文件尾.习惯上我们尽可能将预处理指令写在源程序开头,这种情况下,它的作用范围就是整个源程序文件 u C语言提供的预处理指令主要有

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

怎么成为一个优秀的程序员,而不是一个优秀的码农? 9 条评论 分享 默认排序按时间排序 98 个回答 3844赞同反对,不会显示你的姓名 萧井陌 微信公众号:炼瓜研究所 技术社区 - 3844 人赞同 优秀的程序员会告诉你打根基的重要性,会劝你在厚积薄发前要隐忍. 优秀的码农会告诉你学啥底层.啥啥啥一拖就好了,学了python还要啥自行车啊,数据结构排序函数二分搜索这不都内置了吗?工作中永远用不到,学算法有啥用啊?成为高手有很多种方法汇编是个屁啊? +++基础的分割线+++ 列举几个我认为比较重

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

一个优秀的程序员就是那种即使是过单行道都要往两边看的人.——Doug Linder 作为一个在IT行业的软件程序员,每天促使我去上班的动力就是对编程的乐趣和激情.但是为了激发乐趣并获得永恒的快感,我们需要学习和遵守一些基础知识以成为一名优秀的程序员. 当然我总结的这些东西没有那么神,你说你要想学了之后就一定可以成为优秀程序员,那是不可能的.这只是从我的经验角度出发提供的一些捷径.对于优秀程序员的定义,此处可以理解为能开发出超棒的IT解决方案并且能促进行业整体发展的程序员. 1.掌握基础知识 不管

优秀程序员的良好的学习方式,特征,生活和学习的习惯

学习方式 踏入程序员这个行业,你就注定要学习一辈子,因为新技术层出不穷,技术体系更新快速,这是和其他行业最大的区别之一.所以,如果你想在这个行业混出点样子,那么请你随时做好学习的准备,如果你想成为优秀的程序员,那么一定要有正确的学习方式,下面推荐几条程序员的最佳学习方式,希望能帮你事半功倍. 书籍和期刊是必不可少的 无论你是新手菜鸟还是高级程序员,你都离不开书籍,当然我们要有选择的读书,尽量选择一些经典的书籍来看,如果你英文水平比较好,那么读一些老外撰写的书籍是最好不过的了.书籍能让你在繁杂的互

[转载]成为优秀程序员的10个有效方法

下文转载自http://news.cnblogs.com/n/511465/,作者是 码农网 – 小峰 . 一个优秀的程序员就是那种即使是过单行道都要往两边看的人.——Doug Linder 作为一个在 IT 行业的软件程序员,每天促使我去上班的动力就是对编程的乐趣和激情.但是为了激发乐趣并获得永恒的快感,我们需要学习和遵守一些基础知识以成为一名优秀的程序员. 当然我总结的这些东西没有那么神,你说你要想学了之后就一定可以成为优秀程序员,那是不可能的.这只是从我的经验角度出发提供的一些捷径.对于优

成为优秀程序员的10个有效途径

一个优秀的程序员就是那种即使是过单行道都要往两边看的人.——Doug Linder 作为一个在IT行业的PHP程序员,每天促使我去上班的动力就是对编程的乐趣和激情.但是为了激发乐趣并获得永恒的快感,我们需要学习和遵守一些基础知识以成为一名优秀的程序员. 当然我总结的这些东西没有那么神,你说你要想学了之后就一定可以成为优秀程序员,那是不可能的.这只是从我的经验角度出发提供的一些捷径.对于优秀程序员的定义,此处可以理解为能开发出超棒的IT解决方案并且能促进行业整体发展的程序员. 1.掌握基础知识 不

为什么优秀的程序员既懒又笨程序员

我们会发现这样一个有悖常理的现象:优秀的程序员都是即懒又笨的. 因为懒,他才会写出各种各样的工具来替自己干活.因为懒,他才会想办法避免去写无聊重复的代码.因此避免了代码的冗余,消减了维护的成本,使重构变得容易.最终,这些由于懒惰作用开发出的工具和最佳编程实践方法大大提升了产品的质量. 懒惰的程序员也因此变成了优秀的程序员.当然,这只是事情的一部分:从一个懒惰的程序员变成一个优秀的程序员,他/她会在学习如何能够永远保持懒惰时表现出惊人的不懒惰--也就是,什么样的软件工具能让自己干活更轻松,什么方法