程序员特有的9个坏习惯
生活随笔
收集整理的這篇文章主要介紹了
程序员特有的9个坏习惯
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
0. 程序員數(shù)數(shù)會(huì)從0開(kāi)始數(shù)起.例:程序員吵 架的時(shí)候會(huì)說(shuō):“我數(shù)三下,你再不閉嘴我就不客氣了! 零! 一! 二!” 或者列清單的時(shí)候編號(hào)會(huì)從0.開(kāi)始寫。因:array[0]是數(shù)組的第一個(gè)元素。評(píng):這個(gè)習(xí)慣的養(yǎng)成是一個(gè)艱難的過(guò)程。多少次的越界,多少次的循環(huán)次數(shù)錯(cuò)誤讓我們深深的記住了從0開(kāi)始。1. 程序員用肯定和否定 回答選擇性的問(wèn)題例:問(wèn) “您想喝咖啡還是喝茶?” 程序員答:“嗯.”因:當(dāng)條件或||有一個(gè)子句值為真,則整個(gè)語(yǔ)句值為真。評(píng):這個(gè)習(xí)慣夸張了一點(diǎn), 但這的確是程序員思維方式的通病,用計(jì)算機(jī)的處理邏輯處理人類問(wèn)題。當(dāng)然這樣的回答顯然是存在編程錯(cuò)誤的,因?yàn)閷?duì)于這個(gè)問(wèn)題他錯(cuò)誤的返回了布爾型的值。雖然高度懷疑有沒(méi)有人關(guān)心這種回答的結(jié)果是怎樣,還是給出一個(gè)答案. 如果真的在程序的世界里,服務(wù)員會(huì)優(yōu)先考慮給你咖啡,如果沒(méi)有咖啡了,才會(huì)端茶給你。2. 程序員普遍患有或曾經(jīng)患有分號(hào)結(jié)尾綜合癥例:比如這幾行;因:大部分程序,特別是多數(shù)程序員的啟蒙編程語(yǔ)言C語(yǔ)言是用分號(hào)結(jié)尾語(yǔ)句的;評(píng): 換行之前習(xí)慣用分號(hào)結(jié)尾, 這是程序員專屬的壞習(xí)慣. 還記得編譯報(bào)的各種詭異的錯(cuò)最后原因總是少了那一個(gè)小小的”;”嗎? 這就是這個(gè)壞習(xí)慣的成因. 據(jù)說(shuō)分號(hào)結(jié)尾是有典故的, 因?yàn)殒I盤上的分號(hào)正好在右手小拇指的位置, 比起句號(hào)之類有著得天獨(dú)厚的地理優(yōu)勢(shì). 當(dāng)然也有不需要分號(hào)結(jié)尾的編程語(yǔ)言(比如Ruby還有Python), 剛用起來(lái)會(huì)因?yàn)闆](méi)有分號(hào)結(jié)尾而格外糾結(jié)。3. 程序員對(duì)”語(yǔ)言”的概念和普通人有差例:問(wèn):“你都會(huì)哪些語(yǔ)言?” 普通人:“我會(huì)漢語(yǔ)和英語(yǔ), 還會(huì)一點(diǎn)點(diǎn)法語(yǔ)。” 程序員:“我會(huì)C語(yǔ)言,C++ 和 Java,還會(huì)一點(diǎn)點(diǎn)Ruby。”因:程序員的世界里沒(méi)有母語(yǔ)和外語(yǔ), 只有編程語(yǔ)言。評(píng):說(shuō)真的,程序語(yǔ)言的語(yǔ)法學(xué)起來(lái)比外語(yǔ)更容易,拿到一個(gè)用沒(méi)學(xué)過(guò)的語(yǔ)言寫的程序,你多少可以看懂部分程序。程序語(yǔ)言沒(méi)有國(guó)界,是各國(guó)程序員交流最好的橋梁。4. 程序員格格外外的厭惡括號(hào)/引號(hào)不配對(duì)的情形例:看到這樣的內(nèi)容 (舉個(gè)簡(jiǎn)單的例子(我知道你懂的),你能表示”我很淡定我不抓狂嗎?因:各種不配對(duì)問(wèn)題會(huì)導(dǎo)致編譯錯(cuò)誤。評(píng):掃視代碼,對(duì)不配對(duì)的情況異常敏感,瞥一眼就能發(fā)現(xiàn)哪里少了個(gè)右括號(hào)。這種癥狀在使用那些帶自動(dòng)補(bǔ)全功能的開(kāi)發(fā)環(huán)境時(shí)變得更為糾結(jié)。5. 程序員認(rèn)為 千(k) == 1024例:程序員換算表: 1km == 1024m, 1kg == 1024g因:成因很曲折 計(jì)算機(jī)是二進(jìn)制的世界 -> 1024是2的10次方 -> 英語(yǔ)里用kilo一詞來(lái)表示 -> kilo翻譯成中文是”千”, 比如千米, 千克。評(píng):也許一般人會(huì)認(rèn)為500,1000是很整的數(shù),但程序員會(huì)覺(jué)得512,1024是很整的數(shù).不要奇怪,如果128,256,512這種形式看著不夠整,幫你轉(zhuǎn)換成二進(jìn)制: 10000000,100000000,1000000000…6. 程序員慣用 == 來(lái)表示相等的意思例:見(jiàn)5,因:在程序語(yǔ)言中,“=” 是賦值,“==” 才用來(lái)判斷二者是否相等。評(píng):單等和雙等的區(qū)別是程序入門必修課,也是老師愛(ài)考的考點(diǎn)。如果在C語(yǔ)言if語(yǔ)句的判定條件里寫了個(gè)單等,編譯能通過(guò),結(jié)果卻往往不對(duì),夠一個(gè)新手查上一陣子的。當(dāng)然目前的語(yǔ)言大都考慮到這一點(diǎn),防止了這類的誤寫,但是單等和雙等的差異已經(jīng)深入每個(gè)程序員的 內(nèi)心。7. 程序員使用”//”表示”請(qǐng)無(wú)視這一行文字”例:餐廳中。程序員A:“我吃魚(yú)香肉絲蓋飯,你吃什么?”程序員B:“宮保雞丁蓋飯。”程序員A 在點(diǎn)菜單寫上:魚(yú)香肉絲蓋飯 1宮保雞丁蓋飯 1程序員B:“我還是要牛肉面吧!”程序員A 更正點(diǎn)菜單:魚(yú)香肉絲蓋飯 1// 宮保雞丁蓋飯 1牛肉面 1因:程序中用”//”為代碼加上注釋, 程序運(yùn)行時(shí)會(huì)無(wú)視掉”//”開(kāi)頭的代碼行。評(píng):如果和一伙程序員在一起時(shí)被冷落了,可以抱怨一句”喂喂喂我是被注釋掉了嗎?” 相信一向以幽默感豐富又有愛(ài)心著稱的程序員們會(huì)關(guān)注你的。8. 程序員有 中文標(biāo)點(diǎn)恐懼癥例:如果你注意到了,這篇文章自始至終都在使用英文標(biāo)點(diǎn),這就是最好的例子。因:程序中的全部符號(hào)都嚴(yán)格需要是英文半角標(biāo)點(diǎn)。評(píng):這個(gè)壞習(xí)慣是有中國(guó)特色的,中國(guó)程序員特 有的。任何一名優(yōu)秀的我國(guó)程序員都應(yīng)該可以作到區(qū)別中文標(biāo)點(diǎn)和英文標(biāo)點(diǎn)。比如, 和,還有 ’和 ‘。真的,當(dāng)年初學(xué)編程的時(shí)候,諸如 “error C2018: unknown character ’0xa3′” 的錯(cuò)誤看得還不夠多嗎!就是這樣一群人,如果你慢吞吞的用電腦他們會(huì)急躁的搶過(guò)鍵盤熟練的使用各種快捷鍵,他們會(huì)對(duì)著小孩子講計(jì)算機(jī)的三原色是紅綠藍(lán)而不是紅黃藍(lán),他們描述大小距離更偏向于以像素作單位,陪女朋友看電影看到電影院座位上稀稀落落的人就想做磁盤碎片整理…抱怨歸抱怨,這不也正是他們的可愛(ài)之處嗎!
總結(jié)
以上是生活随笔為你收集整理的程序员特有的9个坏习惯的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 联网时浏览器跳出MSN中国
- 下一篇: NumberFormat的使用