黑马程序员技术交流社区

标题: 一定要理解程序员 程序员的坏习惯 [打印本页]

作者: 黑妞~    时间: 2014-8-29 10:29
标题: 一定要理解程序员 程序员的坏习惯

如果你是一个程序员,或者你就读计算机相关专业,那么你应该能理解下面这些诡异的小习惯是怎么养成的,或者你本身就有着其中的某些习惯:

0.程序员数数会从0开始数起.

例:程序员吵架的时候会说:“我数三下,你再不闭嘴我就不客气了!零!一!二!”或者列清单的时候编号会从0.开始写.

因:array[0]是数组的第一个元素.

评:这个习惯的养成是一个艰难的过程.多少次的越界,多少次的循环次数错误让我们深深的记住了从0开始.

1.程序员用肯定和否定回答选择性的问题.

例:问“您想喝咖啡还是喝茶?”程序员答:“嗯.”

因:当条件或||有一个子句值为真,则整个语句值为真.

评:这个习惯夸张了一点,但这的确是程序员思维方式的通病,用计算机的处理逻辑处理人类问题.当然这样的回答显然是存在编程错误的,因为对于这个问题他错误的返回了布尔型的值.虽然高度怀疑有没有人关心这种回答的结果是怎样,还是给出一个答案.如果真的在程序的世界里,服务员会优先考虑给你咖啡,如果没有咖啡了,才会端茶给你.

2.程序员普遍患有或曾经患有分号结尾综合症;

例:比如这几行;

因:大部分程序,特别是多数程序员的启蒙编程语言C语言是用分号结尾语句的;

评:换行之前习惯用分号结尾,这是程序员专属的坏习惯.还记得编译报的各种诡异的错最后原因总是少了那一个小小的”;”吗?这就是这个坏习惯的成因.据说分号结尾是有典故的,因为键盘上的分号正好在右手小拇指的位置,比起句号之类有着得天独厚的地理优势.当然也有不需要分号结尾的编程语言(比如Ruby还有Python),刚用起来会因为没有分号结尾而格外纠结.

3.程序员对”语言”的概念和普通人有差.

例:问:“你都会哪些语言?”普通人:“我会汉语和英语,还会一点点法语.”程序员:“我会C语言,C++和Java,还会一点点Ruby.”

因:程序员的世界里没有母语和外语,只有编程语言.

评:说真的,程序语言的语法学起来比外语更容易,拿到一个用没学过的语言写的程序,你多少可以看懂部分程序.程序语言没有国界,是各国程序员交流最好的桥梁.

4.程序员格格外外的厌恶括号/引号不配对的情形.

例:看到这样的内容(举个简单的例子(我知道你懂的),你能表示”我很淡定我不抓狂吗?

因:各种不配对问题会导致编译错误.

评:扫视代码,对不配对的情况异常敏感,瞥一眼就能发现哪里少了个右括号.这种症状在使用那些带自动补全功能的开发环境时变得更为纠结.

5.程序员认为千(k)==1024.

例:程序员换算表:1km==1024m,1kg==1024g.

因:成因很曲折计算机是二进制的世界->1024是2的10次方->英语里用kilo一词来表示->kilo翻译成中文是”千”,比如千米,千克.

评:也许一般人会认为500,1000是很整的数,但程序员会觉得512,1024是很整的数.不要奇怪,如果128,256,512这种形式看着不够整,帮你转换成二进制:10000000,100000000,1000000000…

6.程序员惯用==来表示相等的意思.

例:见5.

因:在程序语言中,“=”是赋值,“==”才用来判断二者是否相等.

评:单等和双等的区别是程序入门必修课,也是老师爱考的考点.如果在C语言if语句的判定条件里写了个单等,编译能通过,结果却往往不对,够一个新手查上一阵子的.当然目前的语言大都考虑到这一点,防止了这类的误写,但是单等和双等的差异已经深入每个程序员的内心.

7.程序员使用”//”表示”请无视这一行文字”.

例:餐厅中.程序员A:“我吃鱼香肉丝盖饭,你吃什么?”

程序员B:“宫保鸡丁盖饭.”

程序员A在点菜单写上:

鱼香肉丝盖饭1

宫保鸡丁盖饭1

程序员B:“我还是要牛肉面吧!”

程序员A更正点菜单:

鱼香肉丝盖饭1

//宫保鸡丁盖饭1

牛肉面1

因:程序中用”//”为代码加上注释,程序运行时会无视掉”//”开头的代码行.

评:如果和一伙程序员在一起时被冷落了,可以抱怨一句”喂喂喂我是被注释掉了吗?”相信一向以幽默感丰富又有爱心著称的程序员们会关注你的.

8.程序员有中文标点恐惧症.

例:如果你注意到了,这篇文章自始至终都在使用英文标点,这就是最好的例子.

因:程序中的全部符号都严格需要是英文半角标点.

评:这个坏习惯是有中国特色的,中国程序员特有的.任何一名优秀的我国程序员都应该可以作到区别中文标点和英文标点.比如,和,还有’和‘.真的,当年初学编程的时候,诸如“error C2018:unknown character’0xa3′”的错误看得还不够多吗!

就是这样一群人,如果你慢吞吞的用电脑他们会急躁的抢过键盘熟练的使用各种快捷键,他们会对着小孩子讲计算机的三原色是红绿蓝而不是红黄蓝,他们描述大小距离更偏向于以像素作单位,陪女朋友看电影看到电影院座位上稀稀落落的人就想做磁盘碎片整理…抱怨归抱怨,这不也正是他们的可爱之处吗!



作者: IT@民工    时间: 2014-8-29 12:35
:victory::victory::victory:
作者: 粺¹³¼畅    时间: 2014-8-29 12:47
{:2_36:}{:2_40:}
作者: shuken1990    时间: 2014-8-29 18:51
{:2_35:}{:2_35:}
作者: mjwp_cool    时间: 2014-8-29 19:58
赞一个,未来的我会是这样子吗;
//会吗,不会吧
作者: 热火程序猿    时间: 2014-9-1 10:24
哈哈,有点
作者: 爱雪、却怕冷    时间: 2014-9-8 22:37
{:3_46:}确实有点.
作者: 迷失的独白    时间: 2014-9-9 00:01
从c语言过度的时候,是有点别有
作者: 庄得超    时间: 2014-9-10 12:57
程序员的确很可爱:)
作者: 毛毛毛玉    时间: 2014-9-16 06:32
各种数组的.count()治好了第一条……好吧,这个有点牵强,不过我还真见过从0开始数的同事。
第二条和自然语境出入太大。
第三条被JavaScript教做人了。
第四条同样是被JavaScript教做人,倒不是说js不需要配对,而是js写长了之后你只知道写的时候是配着对的,至于后来……括号太多根本分不清了。
第五条,哼哼,因为程序员们的努力,现在所有人都知道一k是1024了。
第六条,sql教你什么是正确的……
第七条,如果你同时用HTML,razor语法,和C#等等,你就会因为到底该用什么玩意注释而困惑很久然后发现还是在文字上面划一道比较靠谱……
第八条……口胡!HTML页面上如果想要缩进又懒得写margin/padding之类的怎么办,答案是把中文输入法调出来,全角,猛击空格……
顺带一提,你如果看谁不顺眼,可以在他的js里面来个全角空格,想在缺乏编译器支持的js里面翻出来一个全角空格,第一次被这么阴的人多少还是要花点时间的。(请不要真的模仿……

作者: yueyazhishang    时间: 2014-9-22 11:06
    haokongjudexiguang
作者: date1130    时间: 2014-9-26 19:35
哈哈,好可爱。
作者: 油油油菜花    时间: 2014-10-6 00:16
我的大腿…………
作者: moon1993zs    时间: 2014-10-14 15:45
哈哈,一群可爱的程序员。:lol
作者: gaouj    时间: 2014-10-15 08:38
是啊,说到点子上了!
作者: 田峻菘    时间: 2014-10-18 21:12
很生动啊。
作者: 想成为黑马    时间: 2014-11-4 11:54
仔细一想,确实是这样额,职业病么
作者: Jeik    时间: 2014-11-13 13:45
呵呵!看看笑一笑
作者: 一朵奇葩    时间: 2014-11-13 13:49
确实如此啊
作者: 阿穆隆    时间: 2014-11-14 15:27
等我做到楼主说的这些了那就代表我也是技术流了吧。。。
作者: 一朵奇葩    时间: 2014-11-17 09:53

确实如此啊
作者: 关军波    时间: 2014-11-19 08:06
中了!!!!!!!!!!!!11
作者: 逗比程序员    时间: 2014-11-22 13:13
我们大家都是猿类
作者: chaijie    时间: 2014-12-14 00:39
我想要这种坏习惯
作者: 夜枫冷    时间: 2014-12-15 20:52
哈哈,感觉好有意思
作者: songkaihua    时间: 2014-12-18 19:00
可爱的萌萌的程序员
作者: sunspot    时间: 2014-12-19 21:57
分号结尾……
作者: cxj    时间: 2014-12-20 00:31
我经常忘记写“;”
作者: 古月哥欠    时间: 2014-12-21 00:57
嗯嗯  理解万岁啦
作者: MengDeKaiShi    时间: 2014-12-22 21:31
大赞!!!
作者: 小徐_y8nUx    时间: 2014-12-23 13:29
宝贵的经验,学习了
作者: 魏文杰    时间: 2014-12-26 01:01
这个不能有。。。
作者: 小小笑笑    时间: 2014-12-29 20:43
0 1 2 真是
作者: 烧烤节    时间: 2015-1-4 20:29
这是......好想笑
作者: SNXJ    时间: 2015-1-6 21:49
我能说我也有中文标点恐惧症吗   尤其好友那个可怕的1024
作者: SNXJ    时间: 2015-1-6 21:50
我能说我也有中文标点恐惧症吗   尤其好友那个可怕的1024
作者: Y_木头人    时间: 2015-1-6 22:43
有点强迫症的赶脚。。
作者: qiezhiyi    时间: 2015-1-8 10:20
嘿嘿,有点共性
作者: HHFSpeed    时间: 2015-1-12 21:17
哈哈,习惯成自然
作者: 六悦唯夏    时间: 2015-1-15 11:01
一定理解程序员
作者: 飞翔的蜗牛    时间: 2015-1-24 23:29
不错不错。。
作者: 张宁111    时间: 2015-1-28 20:37
好,鼓掌
作者: xyycici    时间: 2015-1-29 00:20
是蛮可爱的
作者: 我jiu是wo    时间: 2015-2-3 22:29
66666666666
作者: 骑士向前    时间: 2015-2-13 10:07
fighting!fighting!
作者: orsoul    时间: 2015-2-13 21:24
轻松一乐
作者: orsoul    时间: 2015-2-13 21:28
轻松一乐。不过我真的是有将编程中的习惯带到生活中的趋势呃
作者: 226362149    时间: 2015-2-15 21:49
这算我的目标了……{:2_32:}
作者: 骑士向前    时间: 2015-2-16 11:21
fighting!fighting!
作者: 木子轩    时间: 2015-2-17 12:28
正在用零数数............
作者: qiuyuhuaihua    时间: 2015-3-6 10:36
携学程序久了程序猿就会有强迫症~~
作者: 为梦想而生    时间: 2015-3-10 13:51
程序员强迫症                                       
作者: 378939632    时间: 2015-3-12 14:06
:victory:万里之路始于足下,都是从菜鸟过来的,相信自己也会到那天的。
作者: wde34    时间: 2015-3-14 09:32
程序员聊天:
A: 嘿 //是什么意思啊?
B: 嘿.
A: 呃 我问你//是什么意思?
B: 问吧.
A: 我刚才不是问了吗?
B: 不是.
A: 你再看看记录…
B: 看完了.
A: …..
A: 所以//是啥?
B: 所以什么?
A: 你存心耍我吧?
B: 没有啊 你想问什么?
………
(不断循环之后…A一气之下 和B绝交 自己苦学程序…..)
(N年后 A终于修成正果 回想起B 又把聊天记录翻出来看 这时他突然发现 B没有耍他 而他也不知道当时自己问B什么问题..)

作者: wde34    时间: 2015-3-14 09:33
程序员聊天
A: 嘿 //是什么意思啊?
B: 嘿.
A: 呃 我问你//是什么意思?
B: 问吧.
A: 我刚才不是问了吗?
B: 不是.
A: 你再看看记录…
B: 看完了.
A: …..
A: 所以//是啥?
B: 所以什么?
A: 你存心耍我吧?
B: 没有啊 你想问什么?
………
(不断循环之后…A一气之下 和B绝交 自己苦学程序…..)
(N年后 A终于修成正果 回想起B 又把聊天记录翻出来看 这时他突然发现 B没有耍他 而他也不知道当时自己问B什么问题..)
作者: 独孤忆    时间: 2015-3-14 21:54
貌似在哪看过这篇文章
作者: 小小迪    时间: 2015-3-17 18:48
支持一下
作者: 我的碧海蓝天    时间: 2015-3-17 23:01
哈哈,总结的很有意思
作者: welfsen    时间: 2015-3-18 15:40
{:3_47:}{:3_47:}
作者: 山里孩子    时间: 2015-3-19 20:00
哎,还要进来呢.
作者: zhaotiao3080    时间: 2015-3-20 09:35
的确如此
作者: keven1119    时间: 2015-3-20 16:48
哈哈,这样子的吗?刚开始学呢。
作者: 风飘逸    时间: 2015-3-23 12:41
这些毛病好多人都意识到了,但很难改掉
作者: 七十九刀    时间: 2015-3-25 22:41
哈哈哈,太有意思了
作者: 高怀    时间: 2015-3-26 00:54
顶!!!!




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2