从编程语言排行看程序员信仰

原创
开发 前端
2013年12月9日,TIOBE社区公布了2013年最后一个月的编程语言排行榜。和往年一样,每个月的编程语言排行榜都获得了程序员群体的火热围观。第一年从事编辑工作的小编,着实被大家的“壮举”震撼到了。

[[93219]]

2013年12月9日,TIOBE社区公布了2013年***一个月的编程语言排行榜。和往年一样,每个月的编程语言排行榜都获得了程序员群体的火热围观。***年从事编辑工作的小编,着实被大家的“壮举”震撼到了。

男大当婚,女大当嫁。当了程序员的是不是就一定会去猛戳编程语言排行榜的链接?程序员群体对于编程语言的宗教般信仰指数,不可小觑。或许,一句话,或是一个瞬间,会让我们明白很多。

不知道大家有没有看过《人间正道是沧桑》,瞿恩有句话是这么说的:“这世界上,梦想有两种,***种,我实现了自己的梦想。第二种,梦想因我而实现,纵然失去了自己的生命。”因此,我就想到了“信仰”一词,然后,又突然想到,程序员是不是也应该有自己的信仰呢?各种各样的程序员,每天都在敲着各种各样的代码,到底有没有一个信念能够将所有程序员拉在一起。

比如:

有的人把代码当乐趣,只要让他写代码,比做什么都开心。

有的人纯粹把代码当作任务,养家糊口的本钱。

有的人视代码为宠物,精心呵护,容不下一丝瑕疵。

有的人视代码为工具,只要能用就行,管他扩展性和维护性。

有的人会说,我做了单元测试,没有发现什么问题。你要是发现bug一定要告我。

有的人会说,这代码没问题的,都运行两年的代码了,没必要测了。

这两三年,程序员群体基数迅速扩张,这本是一件好事;但“基层”程序员却奇怪的陷入了“斯德哥尔摩”症候群!为什么这么说?因为程序员信仰指数在逐渐流失。就如同罪案现场人质“同情”起了绑匪,“屌丝心理”如病毒般肆意蔓延,吞噬了新新程序员的斗志,并产生认同感。因此,入行前***多问问自己。

首先, 问问自己,是否真的喜欢写代码这样枯燥的工作。如果不是,你可以试着考虑换份工作。

假如你非常喜欢写代码,那我又要问了:

你觉得写代码的乐趣在哪里?

说实话,我曾被问过这个问题。首先,这个问题其实问的非常好,这是一个程序员进行自我剖析的好问题。同时,这个问题又非常难以回答。 就像问到为什么爱一个人,八成有人回答没有任何理由。的确,爱就是爱,不爱就是不爱,如果非要说个喜欢写代码理由,我想应该是喜欢优美的代码旋律在手上键指如飞的感觉,可以在有限的键盘按键中,敲出无穷无尽美妙旋律。

有时在想,偏激未必是一件坏事。 信奉敏捷开发的人,理性一些来讲,有些东西的确有些偏激。比如,博客园上曾经有人讨论过,早上站立会议是否必须站着的问题,任何一个函数都不能超过10行,一个测试案例只能有一个断言检查。在理性的偏激下,往往能够更加激发人的潜能。在合理的情况下,形成一些近乎偏激的程序员信仰,我觉得还是有必要的。

这里,小编汇总几条在之前看到箴言,希望大家能一起来补充。看看我们究竟能列出多少条。

1. 自己的代码必须进行单元测试

不管是产品代码还是测试代码,都必须编写单元测试案例。产品代码进行单元测试就不用说了,测试代码进行单元测试也是非常重要的!测试代码本身都有问题,被测代码的测试结果又从何谈起。

2. 不要将狗食留给别人

不要将一大堆设计复杂,逻辑混乱,难以理解,根本无法维护的代码留给别人,你要想象着如何让自己的代码交到别人手里能够获得一些称赞。

3. 避免过度设计,保持简单,以及其扩展性

代码不是写给机器看的,也不是用来炫耀你的复杂设计的。保持简单,容易理解,同时又保持其可扩展性非常重要。

4. 认真给代码的每一个文件,每一个函数,每一个变量命名

想到得到别人的尊敬,必须仔细考虑每个变量的命名,使用统一的命名规范,使用容易理解没有歧义的命名方式。有的人太随意了,打开金山词霸,不管三七二十一,将中文词语一翻译就拿来用。有的人命名,又是拼音又是英文,大小写混乱,缩写和使用全称不统一。

5. 不要那么容易被说服,要据理力争

特别是面对上级,不要糊里糊涂的被说服。首先,你要充分的理解别人的想法,然后,你要清楚的表达出你的观点。有的人特别能说服人,特别能绕,千万别被绕晕了然后点头称是。

6. 处理好你的程序依赖

一个依赖混乱,或是循环依赖的系统是难以维护和扩展的。所以,当你准备设计一系列公共库,想好他们之间的依赖关系吧。这是基本的原则,绝对不允许违反的。

7. 不要因为麻烦而采用丑陋的实现方式。

8. KISS = Keep It Simple and Stupid

简单就是美,保持简单,让用户容易理解,同时也让看你代码的人容易理解。

9. DRY = Don't Repeat Yourself

程序员修炼之道提出的原则,不要做重复的事情,程序员应该学会偷懒,避免重复,增加复用。

如果你也有一起其他的深切感受,可以拿出来和大家一起分享。

 

责任编辑:陈四芳 来源: 51CTO
相关推荐

2011-07-19 13:04:22

网络协议网络编程

2013-11-04 09:39:16

程序员信仰

2012-11-12 09:35:24

开发工具程序员IE6

2009-07-28 08:28:15

2021-10-26 16:25:25

编程语言JavaPython

2009-02-27 09:25:28

编程语言程序员C#

2013-08-23 11:06:34

编程语言

2015-05-19 14:34:17

程序员编程语言

2011-03-07 15:38:33

3月编程语言排行榜

2016-04-28 11:17:33

互动出版网

2018-01-09 20:29:15

程序员日本程序员中国程序员

2009-06-14 18:43:57

LinuxWindows对比

2011-05-10 13:37:53

程序员

2012-08-30 10:05:40

编程编程语言程序员

2012-09-19 09:21:59

2012-09-20 09:19:30

程序员非程序西方程序员

2018-07-06 15:25:50

程序员编程python

2022-05-23 07:56:19

语言DSLClojure

2009-05-13 11:40:19

编程语言开发语言Perl

2015-07-14 10:21:58

点赞
收藏

51CTO技术栈公众号