自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

十個(gè)讓你變成糟糕的程序員的行為

開發(fā)
本文討論十個(gè)糟糕程序員的特征,主要是需要讓我們?nèi)ケ苊夂托⌒牡?。你是一個(gè)糟糕的程序員嗎?

之前本站發(fā)表過《優(yōu)秀程序員的十個(gè)習(xí)慣》以及《程序員需要具備的基本技能》,那是我們需要去學(xué)習(xí)和培養(yǎng)的。這里,我們主要討論十個(gè)糟糕程序員的特征,主要是需要讓我們?nèi)ケ苊夂托⌒牡摹?/P>

1) 情緒化的思維

如果你開始使用不同顏色的眼光來看待這個(gè)世界的話,那么你可能會(huì)成為一個(gè)很糟糕的程序員。情緒化的思維或態(tài)度很有可能會(huì)把自己變成一個(gè)怪物。相信你經(jīng)??梢钥吹胶芏嗪茉愀獾某绦驎?huì)使用下面的這些語句:

我的程序不可能有這種問題。
Java就是shit。
我最恨的就是使用UML做設(shè)計(jì)。
需求怎么老在變,沒辦干了。
受不了這些人,他們到底懂不懂啊。
…… ……
這些帶著情緒化的思維和態(tài)度,不但可以讓你成為一個(gè)很糟糕的程序員,甚至可以影響你的前途。因?yàn)?,情緒化通常都是魔鬼,會(huì)讓你做出錯(cuò)誤的判斷和決定,錯(cuò)誤碼率的判斷和決定直接決定了你的人生。


2) 懷疑別人

糟糕的程序總是說:“我的代碼一定是正確的,我懷疑編譯器有問題”,“我這應(yīng)該沒有問題吧,STL庫(kù)怎么這么難用啊”。我曾經(jīng)見過有程序員這樣使用STL類:map< char*, char*>,當(dāng)他發(fā)現(xiàn)這樣放入字符串后卻取不出來,覺得那是STL庫(kù)的BUG,然后自己寫了一個(gè)map!我的天?。?/P>

某些時(shí)候,過早的下結(jié)論是一個(gè)很不好的習(xí)慣,任何事情都有其原因,只有知道了原因,你才能知道是誰的問題。一般來說,總是自己出的問題。

3) 過多關(guān)注實(shí)現(xiàn),陷入問題細(xì)節(jié)

有些時(shí)候,當(dāng)我們面對(duì)一個(gè)問題或是一個(gè)需求的時(shí)候,糟糕的程序員總是會(huì)馬上去找一個(gè)解決方案或是實(shí)現(xiàn),這是一個(gè)很不好的習(xí)慣。設(shè)計(jì)模式告訴我們,“喜歡接口,而不是實(shí)現(xiàn)”就是告訴我們,認(rèn)清問題的本質(zhì)和特性要比如何實(shí)現(xiàn)更重要。

對(duì)于一個(gè)客戶的問題來說,首先應(yīng)該想到的是如何先讓用戶正常工作,如果恢復(fù)正在“流血”的系統(tǒng),而不是把用戶放在一邊而去分析問題的原因和解決方案。
對(duì)于解決一個(gè)bug來說,重現(xiàn)bug,了解原來程序的意圖是首先重要的事,而不是馬上去修改代碼,否則必然會(huì)引入更多的BUG。
對(duì)于一個(gè)需求來說,我們需要了解的需求后面的商業(yè)背景,use case和真實(shí)意圖,而不是去討論如果實(shí)現(xiàn)。只有了解了用戶的真實(shí)意圖,實(shí)現(xiàn)使用,你才能真正如果去做設(shè)計(jì)。
糟糕的程序總是容易陷入細(xì)節(jié),爭(zhēng)論于如何實(shí)現(xiàn),問題的根本原因,而忽略了比這些更重要的東西。只有看懂了整個(gè)地圖,你才知道要怎么去走。

4) 使用并不熟悉的代碼

糟糕的程序員***的朋友是 Ctrl-C 和 Ctrl-V ,有些時(shí)候,他們并不知道代碼的確切含義,就開始使用它,有證據(jù)表明,由拷貝粘貼引發(fā)的bug點(diǎn)了絕大多數(shù)。因?yàn)?,代碼總是只能在特定的環(huán)境下才能正常地工作,如果代碼的上下文改變了,很有可能讓使得代碼產(chǎn)生很多你不知道的行為,當(dāng)你連代碼都控制不住了,你還能編出什么好的程序呢?

5) 拼命工作而不是聰明的工作

對(duì)于糟糕的程序員,我們總是能看到他們拼命地修正他們的bug,總是花非常多時(shí)間并重復(fù)地完成某一工作。而好的程序可能會(huì)花雙倍的時(shí)間來準(zhǔn)備一個(gè)有效的開發(fā)環(huán)境,工具,以及在開發(fā)的時(shí)候花雙倍甚至10倍的時(shí)間來避免一些錯(cuò)誤。好的程序員總是會(huì)利用一切工具或手段來讓自己的工作變得更有效率,總是為在開發(fā)的時(shí)候盡可能得不出錯(cuò)。后期出錯(cuò)的成本將會(huì)是巨大的,而且那時(shí)改正錯(cuò)誤的壓力也是巨大的。所以,糟糕的程序通常會(huì)讓自己進(jìn)入一種惡性循環(huán),他們看上去總是疲憊的,總是很辛苦的,所以更沒有時(shí)間來改善,越?jīng)]有時(shí)間來改善,就有越多的問題。所以,拼命工作有些時(shí)候可能表明你不是一個(gè)好的程序員。

6) 總是在等待、找借口以及抱怨

當(dāng)需求不明確的時(shí)候,當(dāng)環(huán)境不是很滿意的時(shí)候,他們總是在等待別人的改善。出現(xiàn)問題的時(shí)候,總是在找借口,或是抱怨這也不好,那也不好,所以自己當(dāng)然就沒有做好。糟糕的程序員總是希望自己的所處的環(huán)境是***的,有明確的需求,有非常不錯(cuò)的開發(fā)環(huán)境,有足夠的時(shí)間,有不錯(cuò)的QA,還有很強(qiáng)的team leader,以及體貼自己的經(jīng)理,有足夠的培訓(xùn),有良好的討論,有別人強(qiáng)有力的支持……,這是一種“飯來張口,衣來伸手”的態(tài)度,這個(gè)世界本來就不***,一個(gè)團(tuán)隊(duì)需要所有人去奮斗,況且,如果什么都變得***了,那么,你的價(jià)值何在嗎?driving instead of waiting, leading instead of following.

7) 滋生辦公室政治

有句話叫“丑女多作怪”,意思是說如果一個(gè)自己沒有真實(shí)的能力的話,那么他一定會(huì)在其它方面作文章。糟糕的程序員也是這樣,如果他們程序編不好的話,比不過別人的話,他們通常會(huì)去靠指責(zé)別人,推脫責(zé)任,或是排擠有能力的人,等等不正常的手段來保全自己。所以,糟糕的程序通常伴隨著辦公室政治。

8 ) 說得多做得少

糟糕的程序員總是覺得自己什么都懂,他們并不會(huì)覺得自己的認(rèn)識(shí)和知識(shí)都是有限的。這就是所謂的夸夸其談,是的,什么都做不好的程序員能靠什么混日子呢?就是吹啊吹啊。

另一個(gè)表現(xiàn)方式是他們?cè)谠u(píng)論起別人的程序或是設(shè)計(jì),總是能挑出一堆毛病,但自己的程序?qū)懙靡埠軤€??偸桥u(píng)抱怨,而沒有任何有建設(shè)性的意見,或是提出可行的解決方案。

這些糟糕的程序員,總是喜歡以批評(píng)別人的程序而達(dá)到顯示自己的優(yōu)秀。

9) 頑固

當(dāng)你給出一打證據(jù)說明那里有一個(gè)更好的方案,那里有一個(gè)更好的方向的時(shí)候,他們總是會(huì)倔強(qiáng)的認(rèn)為他們自己的做法才是***的。一個(gè)我親身經(jīng)歷的事例就是,當(dāng)我看到一個(gè)新來的程序在解決一個(gè)問題的時(shí)候走到了錯(cuò)誤的方向上時(shí),我提醒他,你可能走錯(cuò)了,應(yīng)該是另外那邊,并且我證明了給他看還有一個(gè)更為簡(jiǎn)單的方法,有。然而,這位程序員卻告訴我,“那是我的方法,我一定要把之走下去,不然我會(huì)非常難受”,于是,在三天后的代碼評(píng)審中,在經(jīng)過頑固地解釋以及一片質(zhì)疑聲中,他不得不采用了我***告訴他的那個(gè)方法。

這些程序員,從來不會(huì)去想,也不會(huì)去找人討論還有沒有更好的方法,而是堅(jiān)持自己的想法,那怕是條死路都一往直前,不撞南墻永不回頭。

10) 寫“聰明”的代碼

他們寫出來的代碼需要?jiǎng)e的同事查看程序語言參考手冊(cè),或是其程序的邏輯或是風(fēng)格看上去相當(dāng)時(shí)髦,但卻非常難讀。代碼本應(yīng)該簡(jiǎn)潔和易讀,而他們喜歡在代碼中表現(xiàn)自己,并嘗試另類的東西,以顯示自己的才氣。是的,只有能力有問題的程序員才需要借助這樣的顯示。

記得以前的一個(gè)經(jīng)歷,一位英語很不錯(cuò)的程序員加入公司,本來對(duì)我們這些英語二把刀來說,我們喜歡看到的是簡(jiǎn)單和易讀的英文文檔,然后,那位老兄為了展示他的英語如何牛,使用了很多GRE中比較生僻的短語和詞匯。讓大家閱讀得很艱苦。最有諷刺意味的是,有一位native的美國(guó)人后來在其郵件中詢問他某個(gè)單詞的意思。呵呵。

你是一個(gè)糟糕的程序員嗎?歡迎你分享你的經(jīng)歷。

【編輯推薦】

  1. 有一天你也會(huì)成為很牛的程序員
  2. 熟練的Java程序員應(yīng)該掌握的技術(shù)
  3. TopCoder國(guó)際編程大賽 中國(guó)程序員奪冠
  4. 從菜鳥到大師,細(xì)看程序員的五種層次
  5. 程序員四大忌,你該如何避免
責(zé)任編輯:yangsai 來源: 酷殼
相關(guān)推薦

2011-07-15 16:06:16

程序員

2023-06-27 17:42:24

JavaScript編程語言

2023-02-06 16:46:59

JavaScript程序員技巧

2010-11-10 10:39:19

2015-12-14 10:20:57

Python程序員錯(cuò)誤

2021-11-01 22:39:14

程序員專業(yè)技術(shù)

2017-11-14 21:30:15

2018-05-23 14:10:15

程序員技能溝通

2024-03-20 17:35:42

2013-01-14 09:11:07

2010-05-06 10:12:55

2015-05-13 14:06:03

程序員糟糕的程序員

2012-12-28 09:58:50

程序員代碼編程

2015-08-19 08:51:38

程序員面試糟糕

2009-07-03 16:07:58

2014-06-09 16:43:11

程序員

2015-10-27 10:20:07

WebjQuery視頻插件

2014-09-26 10:13:32

程序員秘密規(guī)則

2022-01-05 07:07:36

網(wǎng)絡(luò)

2015-05-13 10:42:21

程序員代碼
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)