1. 程序员励志语录
作为一个真正的程序员,首先应该尊重编程,热爱你所写下的程序,他是你的伙伴,而不是工具。下面是关于程序员励志语录的内容,欢迎阅读!
1、永不放弃,永不放弃又有两个原则,第一个原则是永不放弃,第二个原则就是:当你想放弃时回头看第一个原则。
2、非优秀的程序员常常把空间和时间消耗殆尽,优秀的程序员则总是有足够的空间和时间去完成编程任务,而且配合近乎完美。
3、这句话不是很文雅,彻底鄙视那些害怕别人超越自己而拒绝回答别人问题的程序员。
4、你比他好一点,他不会承认你,反而会嫉妒你,只有你比他好很多,他才会承认你,然后还会很崇拜你,所以要做,就一定要比别人做得好很多。
5、每一个问题都是一把锁,你要相信世界上一定有一把钥匙能打开这把锁,你也能找到这把钥匙。
6、内存无论在怎么发展,它都会有一个容量的限制。因此你应该堤防着它。你的程序如果导致内存泄漏,是程序员很可耻的事情。
7、当你想在你的代码中找到一个错误时,这很难;当你认为你的代码是不会有错误时,这就更难了。
8、用代码行数来测评软件开发进度,就相对于用重量来计算飞机建造册空歼进度。
9、初学者请不要看太多太多的书那会误人子弟的,先找本系统的学,很多人用了很久都是只对部分功能熟悉而已,不系统还是不够的。
10、当你用脚本到一半却发现自己用的方法很拙劣时,请不要马上停手;请尽快将余下的部分粗略的完成以保证这个代码的完整性,然后分析州冲自己的错误并重新编写和工作。
11、真正的程序员的程序不会在第一次就正确运行,但是他们愿意守着机器进行若干个30小时的调试改错。
12、一匹真正的好马,即使在鞭子的影子下,也能飞奔。
13、一个人静静坐在电脑面前写代码的感觉,那是什么感觉?那是武林高手闭关修炼的感觉。
14、人呐,眼光放得长远一些,看到的东西也会多一些,生活也就会过得更有意义一点。
15、真正的程序员不画流程图,原始人和文盲才会干这事儿。
16、看帮助,不要因为很难而自己是初学者所以就不看;帮助永远是最好的参考手册,虽然帮助的文字有时候很难看懂,总觉得不够直观。
17、优秀的判断力来自经验,但经验来自于错误的判断。
18、程序中蕴含着很多的道理,唯有大彻大悟者方能体会其中的奥妙。
19、如果建筑工人盖房子的方式跟程序员写程序一样,那第一只飞来的啄木鸟就将毁掉人类文明。
20、真正的程序员不看参考手册,新手和胆小鬼才会看。
21、程序是我的生命,但我相信爱她甚过爱我的生命。
22、别心急,写脚本确实不容易;水平是在不断的实践中完善和发展的。
23、知道一点东西,并不能说明你会写脚本,脚本是需要经验积累的。
24、看得懂的书,请仔细看;看不懂的书,请硬着头皮看。
25、我们应该重视团队的精神,一个人作用再大,也不过是一碗水中比较大的一粒水珠而已。
26、程序员,他们想的是什么?他们想的永远都是技术,他们崇尚的也永远都是技术。
27、真正的程序员不写文档也不需要文档,只有看不懂程序的笨蛋才用文档。
28、程序员可以让步,却不可以退缩,可以羞涩,却不可以软弱,总之,程序员必须是勇敢的。
29、真正的程序员不接受团队开发的理念,除非他自己是头头。
30、真正的程序员没有进度表,只要讨好领导的马屁精才有进度表,真正的程序员会让领导提心吊胆。
31、编程中我们会遇到多少挫折?表放弃,沙漠尽头必是绿洲。
32、不要被对象、属性、方法等词汇所迷惑;最根本的是先了解最基础知识。
33、把在书中亏厅看到的有意义的例子扩充;并将其切实的运用到自己的工作中。
34、我们这个世界的一个问题是,蠢人信誓旦旦,智人满腹狐疑。
35、无私奉献不是天方夜谭,有时候,我们也可以做到。
36、如果你喜欢底层开发,千万不要勉强自己去搞VC,找到你最真实的想法,程序员最不能忍受的就是万精油。
37、调试完一个动态连接函数,固然值得兴奋,但真正的成功远还在无数个函数之后。
38、设计是一个发现问题、而不是发现解决方案的过程。
39、就算我们站在群山之颠,也别忘记雄鹰依旧能从我们头顶飞过。骄傲是比用Java进行底层开发更可笑的东西。
40、一本好书,就像高级武功秘籍一样,哪怕只是从里面领悟到个一招半势,功力提升起来都是惊人的。
41、不要看到别人的回复第一句话就说:给个代码吧!你应该想想为什么。当你自己想出来再参考别人的提示,你就知道自己和别人思路的差异。
42、真正的程序员几乎不写代码的注释,如果注释很难写,它理所当然也很难读。
43、任何傻瓜都能写出计算机可以理解的代码。好的程序员能写出人能读懂的代码。
44、做技术一定要一颗恒心,这样才不会半途而废。
45、如果调试一个程序让你很苦恼,千万不要放弃,成功永远在拐角之后,除非你走到拐角,否则你永远不知道你离他多远,所以,请记住,坚持不懈,直到成功。
46、你的一个程序有时正常有时不正常,而你已经完全遵循编程的规则,为什么?事实上我认为相信只要遵循别人所说就能得到想当然的结果的人其实是个傻瓜。
47、对于问题的理解,一定要透彻。这样你才能实质的解决问题。
48、编程是一种单调的生活,因此程序员比普通人需要更多的关怀,更多的友情。
49、对程序员来说大部分的快乐是从解决问题,特别是独立解决问题中获得,而不是从这个CASE有多大,奖金有多少中获得。
50、有两种方法能写出没有错误的程序;但只有第三种好用。
51、其实你找不到错误不代表错误不存在,同样你看不到技术比你牛的人并不代表世界上没有技术比你牛的人。
52、你要么要软件质量,要么要指针算法;两者不可兼得。
53、一个人静静坐在电脑面前写代码的感觉,那是什么感觉?是武林高手闭关修炼的感觉。
54、理想如果不向现实做一点点屈服,那么理想也将归于尘土。
55、没有情调,不懂浪漫,也许这是程序员的一面,但拥有朴实无华的爱是他们的另一面。
56、如果你没有把握做到,最好就不要承诺,你什么也不承诺,至少别人不会看不起你。
57、‘理论’是你知道是这样,但它却不好用。‘实践’是它很好用,但你不知道是为什么。程序员将理论和实践结合到一起:既不好用,也不知道是为什么。
58、请把书上的例子亲手到电脑上实践,即使配套光盘中有源文件。
59、程序员是值得尊敬的,程序员的双手是魔术师的双手,他们把枯燥无味的代码变成了丰富多彩的软件。
60、把时髦的技术挂在嘴边,还不如把过时的技术记在心里。
寥寥代码中,命运注定良缘.
当编译开始,我们齐手共建
--中国软件的春天!
虽然我们是不同的对象,都有隐私的一面,
但我相信你会找到我的接口,把我的最真给你看!
因为我是你的指针,在茫茫内存的堆栈中,
永远指向你那片天空,不孜不倦!
我愿做你的内联,供你无限次的调用,直到海枯石烂!
我愿做你的引用,和你同进退共生死,一起经受考验!
只是我不愿苦苦地调试你的心情,最终沦为你的友元!
而我更不愿始乱终弃,删不清借你用的空间,
最后一拍两散,搞得内存混乱...
如今我们已被MFC封装--事事变迁!
如今我们已向COM走去--可想当年!
没想到在爱情的世界里, 0与1也是同样的道理。
自从见到了你, 我的爱情旗标立刻变成了 1。
虽然只是短短的一聚, 心中的振荡器却再也无法平息。
每节上课, 我就变成一台多工的机器。
因为想你, 使得 CpU load 总无法降低。
每次考试, 我就变成一条不稳定的 Memory。
因为念你, 使得 parity Check 总无法 Error Free。
想对你说的话, 即使是 Giga 级的哈滴也不够记。
只好期盼, 我会拥有一台可读写的光盘机。
多么希望我们之间, 只有磁头和磁盘的距离。
也希望你是我生命中的 Cache, 不要再让我苦苦寻觅。
每次想打电话给你, 我总是在矛盾中犹疑。
我在你心中的 priority, 到底是怎么样的等级想对你表明心意, 却又害怕遭遇 Deadlock 的打击。
你我之间, 是否有 Algorithm 可来处理这种微妙的关系爱情是场如真似幻的梦境, 没有一定的轨迹。
思想中的逻辑与定理, 在爱情中也无用武之地。
原来, 这就是为什么世间的男女总在互猜心意。
告诉我, 我们之间的爱情到底是 0 或是 1
你对我说, 我们之间的一切没有离散数学中的交集。
我回答说, 你没用过线性代数中的对角矩阵, 又怎知数年后的推移但毕竟这一切已成定局, 终究造成了我们的别离。
在逐渐模糊的身影后, 我忍不住流下了泪。
经营一段爱情, 并不像安装 Linux 那么容易。
纵有 patch 程式, 又如何修补那段支离破碎的记忆。
指向地久天长的指标, 到最后总有一场 Null 的游戏。
可叹红尘痴情众生, 又有多少能够比翼
资料结构中的 AVL Tree, 据说在搜寻方面非常够力。
但即使能在 log n 的时间内找到你, 也不再具有任何意义。
只好将这段情, 深深的埋藏在心底。
静待多年之后, 再细细的回忆。。。
1.0和1为你伴舞,键盘翻译你的命令,网线将你与世界相连,虽然你的工作只是面对屏幕敲打键盘,但你向世界输出的是快乐的音符,程序员节到了,给你的双手放个假,蓝天白云等待你的仰望,清新的空气将把你包围,愿你有一个健康的身体、永远开心快乐!
2.写字楼里写字间,写字间中程序员;程序人员写程序,又将程序换酒钱;酒醒只在屏前坐,酒醉还来屏下眠;酒醉酒醒日复日,屏前屏下年复年;奔驰宝马贵者趣,公交自行程序员;但见满街漂亮妹,哪个归得程序员!程序员节又来临,你还作战程序界,愿你事业有成心情好,休息一下把节过!
3.在中国虽无官方规定的日子,但是我们要为自己过节,寻找属于我们自己的那份快乐。你还记得别人人如何称呼我们吗?程序员、开发者、程序猿/媛、软件攻城狮以及码农,你更喜欢哪一个?
4.深度的思考,让灵感突发;细致的观察,让智慧闪光;跳动的字符,让程序鲜活;有序的排列,让效率提高;不断的改善,让价值突显;不断的编撰,让生命精彩。程序员节,愿你编出幸福程序,永远开心!
5.设立程序员节要归功于一名在并行技术网页设计公司工作的职工——Valentin Balt。2002年,他收集签名向俄罗斯联邦政府请愿,请求将这一天定为程序员节。2009年7月24日,俄罗斯联邦通信与大众传媒部提出了新的节日安排方案,设立程序员节。9月11日,俄罗斯总统梅德韦杰夫签署了这个法案,也就成为了俄罗斯的一个官方节日!
6.为你编辑快乐的程序,给你安装如意的系统,帮你解开幸福的密码,与你下载好运的软件,程序员节到了,一切准备就绪,愿你程序员节心情无限好,笑口合不拢。
7.翩翩起伏的手指,在键盘上空舞个不停。有节奏感的哒哒声,弹奏出一曲曲美妙的音乐篇章。一款又一款高科技智能软件问世了,一幅幅前景美画展现眼前。‘程序员节’祝程序员设计大师,辛劳奋献。为现代科技、军事、航天、工农业等行业,做出的巨大贡献致贺。
8.你有魔幻手指,化符号为神奇;你有抽象思维,让数字更精准;你有深邃智慧,把未来染光辉。程序员节,键盘敲得生活精彩绝美,鼠标点得日子花开富贵。
9.在你的数据库里添些快乐的元素,给你的符号栏里加些如意字符,为你的人生下载好运软件,在你的心间上传幸福无限,程序员节,愿你笑口常开,日子甜甜。
10.滚滚红尘,物欲横流。灯红酒绿,纸醉金迷。不过世界在你的眼里,不是0就是1。你的世界,没有灰色地带,如阳春白雪霞映澄塘,似月射寒江秋菊披霜,纯净的惹人爱怜!我的朋友,程序员节快乐!
11.程序员节,编写一段快乐程序送给你,愿你思绪飞舞,想象丰富,编写出美轮美奂的日子;酝酿美好,展现精彩,点击出幸福美满的生活;编织浪漫,营造温馨,酝酿出甜美如花的爱情!
12.敏锐的观察发现程序的漏洞,跳动的思维迸出灵感的火花,冷静的头脑编写完美的代码,缜密的思考锻造安全的程序,精准的判断展现惊人的才华,不懈的坚持取得巨大的成功。程序员节,用智慧编写美好人生!
2. 程序员久了,会很敏感,因为小事烦躁,怎么回事
程序员的烦躁来源于压力。程序员缺少宣泄情绪的出口,每天基本都是在处理问题,面对工作、生活各方面的压力,没有很好的疏解途径,造成了心理负担
3. 作为一个程序员菜鸟到底应该保持一种什么样的心态
答:感同身受是一个程序员和一个人成功的根本,你需要保持一颗平和的心态,要设身处地的去思考问题,更要积极的展现自己的能力。
4. 作为一个无聊的程序员,如何让自己的生活有乐趣起来
让自己的生活充满仪式感,那么生活就会有许多的乐趣!
5. 做程序员有什么乐趣
乐趣有很多,比如:开发出一个成品后能感受到快乐,一切努力没有白费,又能获得高额的报酬(自己干);通过一个个项目开发可以让自己的经验更加丰富。
首先for循环语句是程序中性能最高的循环之一,我一般都用它。
1.for 有两种形式:一种是数字形式,另一种是通用形式。
数字形式的 for 循环,通过一个数学运算不断地运行内部的代码块。 下面是它的语法:
block 将把 name 作循环变量。 从第一个 exp 开始起,直到第二个 exp 的值为止, 其步长为第三个 exp 。 更确切的说,一个 for 循环看起来是这个样子
注意下面这几点:
所有三个控制表达式都只被运算一次, 表达式的计算在循环开始之前。 这些表达式的结果必须是数字。
var,limit,以及 step 都是一些不可见的变量。 这里给它们起的名字都仅仅用于解释方便。
如果第三个表达式(步长)没有给出,会把步长设为 1 。
你可以用 break 和 goto 来退出 for 循环。
循环变量 v 是一个循环内部的局部变量; 如果你需要在循环结束后使用这个值, 在退出循环前把它赋给另一个变量。
2.通用形式的 for 通过一个叫作 迭代器 的函数工作。每次迭代,迭代器函数都会被调用以产生一个新的值, 当这个值为 nil 时,循环停止。 通用形式的 for 循环的语法如下:
注意以下几点:
explist 只会被计算一次。 它返回三个值, 一个 迭代器 函数, 一个 状态, 一个 迭代器的初始值。
f, s,与 var 都是不可见的变量。 这里给它们起的名字都只是为了解说方便。
你可以使用 break 来跳出 for 循环。
环变量 var_i 对于循环来说是一个局部变量; 你不可以在 for 循环结束后继续使用。 如果你需要保留这些值,那么就在循环跳出或结束前赋值到别的变量里去。
到第二个 exp 的值为止, 其步长为第三个 exp 。 更确切的说,一个 for 循环看起来是这个样子
3.注意下面这几点:
所有三个控制表达式都只被运算一次, 表达式的计算在循环开始之前。 这些表达式的结果必须是数字。
var,limit,以及 step 都是一些不可见的变量。 这里给它们起的名字都仅仅用于解释方便。
如果第三个表达式(步长)没有给出,会把步长设为 1 。
通用形式的 for 通过一个叫作 迭代器 的函数工作。 每次迭代,迭代器函数都会被调用以产生一个新的值, 当这个值为 nil 时,循环停止。 通用形式的 for 循环的语法如下:
注意以下几点:
explist 只会被计算一次。 它返回三个值, 一个 迭代器 函数, 一个 状态, 一个 迭代器的初始值。
f, s,与 var 都是不可见的变量。 这里给它们起的名字都只是为了解说方便。
你可以使用 break 来跳出 for 循环。
环变量 var_i 对于循环来说是一个局部变量; 你不可以在 for 循环结束后继续使用。 如果你需要保留这些值,那么就在循环跳出或结束前赋值到别的变量里去。
到第二个 exp 的值为止, 其步长为第三个 exp 。 更确切的说,一个 for 循环看起来是这个样子
6. 码农为何总爱自嘲,各种自黑
码农一般都是比较偏内向的人,这个群体也很少女孩子,自嘲是为了娱乐一下,就是一种开心的方式。自嘲让他们找到了工作中的乐趣,不然总是觉得生活黯淡无光,码农的生活比较单调,通过自黑满足自己不一样的虚荣心。
7. 为什么一些大龄程序员会时不时的感到迷茫
亲,关于你的问题,是因为懂得太多,有太多烦心事了,可以放下所有,释放一下自己,放假一周,在开始
8. 有哪些关于程序员的心灵鸡汤
1. 在你责怪别人之前,先检查自己的代码
先想一想自己的假设和其他人的假设。来自不同供应商的工具可能内置不同的假设,即便是相同的供应商对于不同的工具,其假设也可能不同。
当其他人正在报告一个你不能重复的问题的时候,去看看他们在做什么。他们可能会做一些你从来没有想到过的事情,或者他们的做事顺序与你的截然不同。
我个人的原则是,如果我有一个不能确定的错误,那么我会先考虑是不是编译器的问题,然后再去检查堆栈是否损坏。特别是当添加跟踪代码会使得问题移动的话就更要这么做了。多线程问题是 bug 的另一个来源,有时候令人焦躁得简直想拔光头发,或者直接想摔电脑。当系统是多线程的时候,最好倾向于简单的代码。我们不能依赖调试和单元测试来发现任何一致性的 bug,所以设计的简单性是最重要的。
所以,在你不分青红皂白地去责怪编译器之前,先想一想福尔摩斯的这条建议,“一旦你排除了种种不可能,剩下的不管有多么难以置信,一定就是真相”。
2. 不断学习
我们生活在一个有趣的时代。随着软件开发逐渐遍布全球各地,你会发现有很多人都可以干你的工作。所以你需要不断学习以保持竞争力。否则,你就会落伍,停滞不前,直到有一天,这份工作不再需要你,或外包给一些更廉价的劳动力。
那么我们能做些什么?有些雇主很慷慨,会提供培训以拓宽你的技能。也有的人会说我没时间或者没这个资金去接受任何培训。所以,关键是要摆正心态,学习是对自己的负责。
这里有一些学习的方法。而且许多资源都可以在互联网上免费获取:
•阅读书籍、杂志、博客、Twitter feeds 和网站。如果你想更深入地了解对象,可以考虑添加到邮件列表或新闻组。点击这里通过邮件订阅《快乐码农》杂志
•如果你真的很想学习某一种技术,那么就亲自动手写代码。
•尽量与导师一起工作。虽然你从任何人身上都可以学到一些东西,但是从那些比你更聪明或更有经验的人身上,你能学到的更多。如果你实在找不到这样的良师益友,那么请继续往下看。
•使用虚拟导师。在网络上找你真正喜欢的作者和开发人员,阅读他们写的内容。订阅他们的博客。
•了解你使用的框架和库。知道事物的工作原理,有助于你更好地应用它们。如果你使用的是开源资源,那么你真的很幸运。使用调试器单步执行代码,以查看内部究竟是怎么回事。你也可以去看看那些确实比你聪明的人是如何编写和审查代码的。
•当你犯了错误,修复 bug,或者遇到问题的时候,试着去真正理解发生了什么事情。很有可能其他人已经遇到过同样的问题,并且发布在了网上。谷歌搜索真的很有用。
•学习东西还有一个好方法就是所谓的“教学相长”。当别人在倾听你的言语,并问你问题的同时,你也会学到东西。可以建立用户组或本地会议。
•为自己感兴趣语言和技术加入或启动一个研究小组(模式社区),也可以创建本地的用户组。
•参加会议。如果去不了的话,也可以在网上看,许多会议会将其谈话免费发布到网上。
•收听播客。
•曾经对代码库运行过静态分析工具,又或者查看下你的 IDE 警告?了解它们报告了什么,以及其原因。
当然如果你有《黑客帝国》中 Neo 那样的超能力,自然这一切对你而言不过是小菜一碟。但很可惜,我们都是普通人,我们需要时间和精力,以及不断的努力才能促使自己不断的学习。不过,你不必成天学习。只要你能有意识地花点时间去学习就可以了,哪怕每天一小时,有总比没有好。人活着不是为了工作,你还应该有自己的生活。
3. 不要害怕破坏东西
每个具备行业经验的程序员肯定参与过代码库岌岌可危的项目。系统很糟糕,并且改变这边总是会破坏另一边不相关的功能。每次添加模块,程序员只能想着尽可能少地改变代码,每次发布都胆战心惊。这座软件的摩天大楼随时有坍塌的可能。之所以改动代码会如此伤脑筋是因为系统太糟糕了。但是即使你知道系统出了问题,却又因为投鼠忌器,而不得不听之任之。任何一个外科医生都懂得,伤口要想愈合就必须得切除腐肉。虽然手术会带来痛苦,但绝对比任伤口发炎溃烂要好。
不要害怕你的代码。没有人会在乎当你捣鼓代码的时候有没有暂时破坏了什么东西。只要你做的改变不会让项目重新回到开始状态,就不会令人崩溃。投入时间重构,能让你受益于项目整个生命周期。这样做还有一个额外的好处是,由于你有过这种处理病危系统的经验,所以你对它应该如何工作非常内行。要善于应用这些知识,千万不要反感这些宝贵的财富。重新定义内部接口,重构模块,重构复制粘贴代码,并通过减少依赖来简化设计。你可以通过消除特殊情况显着降低代码的复杂性,因为特殊情况往往是因为错误的耦合特点导致的。慢慢地从旧结构过渡到新结构,测试一路同行。如果你想要一下子完成一个大的重构,那么往往会因为各种频出的问题而考虑中途放弃。
4. 专业程序员
专业程序员的一个最重要的特点是有责任心。专业程序员会为他们的职业生涯、预算、日程安排承诺、错误、技能技巧负责。一个专业的程序员不会将责任推卸给别人。
如果你是专业的,那么你就需要为自己的职业生涯负责。你有责任去阅读和学习。你有责任去时刻关注最新的产业和技术。但是许多程序员觉得这应该是他们雇主的工作。NO,大错特错。想一想医生?想一想律师?他们都是靠自己来培养和训练自己的。他们的下班时间多用在了阅读杂志报刊上。他们时刻关注着最新的资讯动态。所以,我们也应该如此。你和你雇主之间的关系,已经在雇用合同上作了详细的说明,简而言之就是:你的雇主承诺支付你薪酬,而你承诺做好工作。
专业程序员会为他们编写的代码负责。除非他们知道这些代码是有效的,否则就不会发布代码。现在,好好思考这个问题:如果是你,你会不会在不透彻了解代码的情况下就直接发布代码?专业程序员不希望 QA 找到任何 bug,因为这些代码都是经过他测试之后才发布的。当然,QA 依然会发现一些问题,因为没有一个人是完美的。但作为专业程序员,我们的态度应该是让 QA 找不到任何缺陷。
专业程序员也是好的团队成员。他们负责地对待整个团队的输出,而不是只顾自己的工作。他们乐于助人,善于向彼此学习,在需要的时候甚至会鼎力相助,为了项目前仆后继。
5. 充分利用代码分析工具
测试的价值是编程早期阶段就灌输给软件开发者的一个理念。近年来,单元测试,测试驱动开发和敏捷方法的兴起,证实了我们开始注重于在开发周期的各个阶段进行测试。但是,测试只是你可以用来提高代码质量的许多工具之一。
回过头去看,当C语言还是一个新事物的时候,CPU 时间和任何类型的存储都是非常宝贵的。第一个C语言编译器注意到了这一点,所以选择了通过去掉一些语义分析,来减少代码之间的传递次数。这意味着,在编译时,编译器检查到的可能只是可被检测到的 bug 中的一小部分。为了弥补这个缺陷,Stephen Johnson 写了一个名为 lint 的工具——它将从你的代码中删除一些没有价值的东西——从而实现一些已被它的兄弟C语言编译器撤掉的静态分析功能。然而,静态分析工具却因为可以给出大范围的误报警告和一些没有必要遵循的静态文体惯例的警告而倍受赞誉。
现在的语言、编译器和静态分析工具的设计和以前已经大不相同。由于内存和 CPU 时间变得相对比较便宜,因此负担得起编译器检查更多的错误。几乎每一种语言都拥有至少一个工具,用来检查风格指南的违规行为、常见问题以及一些狡猾的有时候可能很难捕捉到的错误,如潜在取消引用空指针。更高级的工具,如C的 Splint,以及 Python 的 pylint,是可配置的,这意味着你可以通过命令行开关或在 IDE 中,使用配置文件来让工具选择放过其中的哪些错误和警告。Splint 甚至还能让你在注释中注解你的代码,以便于更好地提示你的程序是如何工作的。
6. 关心代码
优秀程序员能写出好代码,这是毋庸置疑的。坏程序员……则不能(他们能写出好代码,就不是坏程序员了,哈哈)。他们总是在生产其他人不得不消灭的怪兽。你的目标是写出好代码,对不?那么你应该成为好程序员。
好的代码并不是凭空而来的,也不能靠运气然后恰巧让你瞎猫碰到死老鼠。为了获得良好的代码,你必须努力的改进。过程是艰难的。但是如果你确实关心代码的话,那么你一定能收获好代码。
仅靠技术并不能成就好的编程。我碰到过一些非常聪明的程序员,他们能够产出令人印象深刻的算法,能够熟记语言标准,但却写出了最可怕的代码。这种代码,阅读起来很痛苦,使用起来很痛苦,修改起来更是令人痛不欲生。我也碰到过一些非常谦逊的程序员,因为坚持简单的代码,所以写出来的程序更优雅,更易于表达他的意思,和他们工作非常愉快。
基于我多年的软件生产经验,我得出的结论是,差强人意的程序员和伟大的程序员之间的真正区别是:态度。好的编程在于专业的方法,以及一种竭尽全力希望写出最好软件的期望。
要成为一个优秀的程序员,你必须对自己的代码负责,真正关心代码——养成积极向上的心态。伟大的代码是由大师精心雕琢的,而不是由那些马虎的程序员胡乱写出来的。