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

好的程序員到底好在哪里?

開(kāi)發(fā) 前端
我這些年和許多程序員工作過(guò)——他們有些人超級(jí)棒,有些明顯比較平常。因?yàn)槲医鼇?lái)和一些熟練的程序員工作的很愉快,我花了一些時(shí)間考慮我羨慕他們什么。是什么讓一個(gè)好的程序員那么好,差的程序員那么差?或者,簡(jiǎn)短一些,是什么讓一個(gè)好的程序員那么好呢?

我這些年和許多程序員工作過(guò)——他們有些人超級(jí)棒,有些明顯比較平常。因?yàn)槲医鼇?lái)和一些熟練的程序員工作的很愉快,我花了一些時(shí)間考慮我羨慕他們什么。是什么讓一個(gè)好的程序員那么好,差的程序員那么差?或者,簡(jiǎn)短一些,是什么讓一個(gè)好的程序員那么好呢?

根據(jù)我的經(jīng)驗(yàn),成為一個(gè)優(yōu)秀的程序員與年齡、教育或者你掙錢(qián)的多少?zèng)]有關(guān)系。關(guān)鍵在于你的表現(xiàn),更深刻的說(shuō),是你如何思考。我注意到我羨慕的程序員有一致的習(xí)慣,比起他們所選語(yǔ)言的知識(shí)、對(duì)數(shù)據(jù)結(jié)構(gòu)和算法的深入理解、或者幾年的工作經(jīng)驗(yàn)——更多的是他們交流的方式,管理自己的方式,和根據(jù)他們精湛的技巧可以知道他們接觸編程的方法很有意義。

[[218054]]

當(dāng)然,成為一個(gè)好的程序員需要的比任何人可以列舉的都還要多,我不會(huì)基于這些實(shí)踐的存在(或者缺失)而單獨(dú)評(píng)判任何程序員。但當(dāng)我看到時(shí)我確實(shí)能明確的知道,當(dāng)我看到一個(gè)具有這些性格的程序員時(shí),我會(huì)想,“這個(gè)人真的知道他們?cè)谧鍪裁础?rdquo;

他們做研究

或者稱作“三思而后行”,或者稱作“谷歌一下”。

無(wú)論你怎么稱呼它,你可能遇到的大多數(shù)編程問(wèn)題幾乎在一定形式上都已經(jīng)被解決了。傳道書(shū)早就記錄在案,陽(yáng)光底下無(wú)新事。在GitHub上的庫(kù)文件列表中,在因特網(wǎng)上的博客中,或者恰好與某個(gè)人經(jīng)驗(yàn)交流中,好的程序員知道要在解決一個(gè)問(wèn)題之前先做研究。

我曾經(jīng)見(jiàn)過(guò)偉大的程序員急于給出解決方案,但是我曾經(jīng)一起工作過(guò)的最糟糕的程序員,從來(lái)不咨詢他人,從而導(dǎo)致做了大量的重復(fù)性工作或者恰好使用了錯(cuò)誤方式來(lái)解決問(wèn)題。于是很不幸的,他們最終為他們的錯(cuò)誤付出代價(jià)。

讀錯(cuò)誤信息(并以之行事)

這包括對(duì)堆棧追蹤的符號(hào)解析。是的,令人厭惡而且不幸——但如果你不愿意這么做,怎么知道哪里出錯(cuò)了?我知道的最高效的程序員不害怕深入挖掘問(wèn)題。最低效的程序員看到錯(cuò)誤甚至都不愿讀錯(cuò)誤信息。(這聽(tīng)起來(lái)挺可笑的,但我遇到的頻率會(huì)讓你吃驚。)

更進(jìn)一步說(shuō),偉大的程序員看到問(wèn)題,會(huì)急迫的去解決它。對(duì)于他們來(lái)說(shuō),讀錯(cuò)誤信息僅僅是第一步;他們渴望深入問(wèn)題并找出錯(cuò)誤的根源。他們對(duì)推卸責(zé)任沒(méi)有興趣,他們對(duì)找到解決方案有興趣。問(wèn)題確實(shí)在他們這里止步。

他們會(huì)去看源代碼

文檔,測(cè)試和人:這些都可能會(huì)說(shuō)謊。未必是故意撒謊,但是如果你想確切的知道代碼是怎么工作的,你就必須親自察看源代碼。

即使這不是你非常熟悉的語(yǔ)言也不要害怕——比如,如果你主要是一個(gè)Ruby程序員并且你懷疑Ruby的C語(yǔ)言包里有錯(cuò)誤,那就去解壓它看看再說(shuō)。不錯(cuò),你可能會(huì)一無(wú)所獲。但是誰(shuí)知道呢,你也可能會(huì)找到問(wèn)題所在,比起什么都不做,你至少選擇了一條更有機(jī)會(huì)的路。

如果你工作在一個(gè)非開(kāi)源的環(huán)境中,就不太好辦了,這很不幸,不過(guò)道理是不變的。糟糕的程序員對(duì)查看源碼通常沒(méi)有太多興趣,結(jié)果就是,跟那些愿意去研究一下源碼的人相比,他們通常會(huì)被這些問(wèn)題困擾的更久。

他們說(shuō)做就做

好的程序員總是趨向于采取行動(dòng)。他們似乎有種控制不住的強(qiáng)迫性——一旦他們確認(rèn)了一個(gè)問(wèn)題或者看到了一個(gè)新的特性需求,就會(huì)立即著手解決,有時(shí)甚至過(guò)早或者過(guò)于勇往直前。他們遇到問(wèn)題的直覺(jué)反應(yīng)就是正面解決它。

有時(shí)這會(huì)帶來(lái)麻煩——但是他們的熱情正是他們能夠做的很好的關(guān)鍵因素。當(dāng)某些人還在拖延回避或者幻想問(wèn)題能自己消失的時(shí)候,好的程序員已經(jīng)開(kāi)始動(dòng)手了。

更簡(jiǎn)單的來(lái)說(shuō)(也許,太過(guò)直白),如果你看到一個(gè)人興奮的發(fā)現(xiàn)并處理問(wèn)題,很有可能你得到了一名好程序員。

他們防患未然

這可能是一個(gè)壞的程序員的特征——他們總是糾纏于一個(gè)又一個(gè)的人為失誤,從來(lái)都是沒(méi)有明白上一個(gè)就轉(zhuǎn)向下一個(gè)。他們總是在抱怨他們程序中的錯(cuò)誤部分,卻耗費(fèi)數(shù)小時(shí)對(duì)完美運(yùn)行的代碼來(lái)debug。他們讓情緒占據(jù)主動(dòng),相信直覺(jué)而不是仔細(xì)明確的分析。

如果你突然遇到一個(gè)問(wèn)題——或者每一個(gè)問(wèn)題看起來(lái)都像是世界末日一般,你極有可能是在犯錯(cuò)誤而不是在解決潛在的問(wèn)題。偉大的程序員會(huì)花費(fèi)一些時(shí)間來(lái)了解是什么出了錯(cuò),哪怕是真的是一場(chǎng)災(zāi)難,除了這些,他們還會(huì)把常出現(xiàn)的問(wèn)題當(dāng)成分配任務(wù)來(lái)處理掉。由于他們能更精確的解決大部分問(wèn)題,從而不會(huì)提高你的團(tuán)隊(duì)的緊張程度。

他們善于交流

說(shuō)到底,編程也是一種交流的方式。能夠簡(jiǎn)潔明了地表達(dá)出你的觀點(diǎn)之于寫(xiě)代碼就如其之于寫(xiě)詩(shī)一樣重要——長(zhǎng)久以來(lái),我發(fā)現(xiàn)那些能夠?qū)懗鼍珶挼碾娮余]件、優(yōu)雅的報(bào)告或者僅僅是高效的備忘錄的人通常也會(huì)是更優(yōu)秀的程序員。

這個(gè)發(fā)現(xiàn)對(duì)寫(xiě)程序和對(duì)英語(yǔ)一樣使用。當(dāng)然,把充斥著括號(hào)和只用一個(gè)字母命名的函數(shù)寫(xiě)在一行里面也是可以的,但是如果沒(méi)有人能夠理解你寫(xiě)的代碼,又有什么意義呢?無(wú)論使用什么媒介,優(yōu)秀的程序員會(huì)把時(shí)間花在如何將他們的觀點(diǎn)更好地表達(dá)出來(lái)上面。

他們激情四射

我想這是最能夠體現(xiàn)一個(gè)好的程序員的地方(并且,不僅在計(jì)算機(jī)行業(yè),這點(diǎn)適用于任何行業(yè))。

如果你真正關(guān)心你做的東西——不只是把它當(dāng)做一個(gè)工作去應(yīng)付,而是一個(gè)興趣、一件對(duì)你有著莫大魅力的事情,那么在這個(gè)行業(yè)里,相較于其他人而言,你就擁有了一項(xiàng)巨大的優(yōu)勢(shì)。好的程序員會(huì)一直保持著寫(xiě)代碼的狀態(tài),他們每天花在這個(gè)行業(yè)里的時(shí)間都不低于8個(gè)小時(shí)——包括工作和空余時(shí)間。在編寫(xiě)項(xiàng)目和授業(yè)解惑兩者之間,他們不會(huì)偏向任何一方。他們不會(huì)只是為了搞清楚某個(gè)東西的工作原理而整天癡迷于新技術(shù)或新的編程語(yǔ)言。

當(dāng)我觀察一個(gè)周日正在做自己感興趣的項(xiàng)目、在創(chuàng)造自己需要的工具、被新的、有趣的事物吸引的程序員的時(shí)候,我意識(shí)到我正在觀察一個(gè)會(huì)令所有人都不由自主心生敬意的人。最后,偉大的程序員不會(huì)將他們的專業(yè)看做賺錢(qián)的工具,而是一種改變世界的手段。我想這就是早就一個(gè)偉大程序員的真正原因吧。編程,對(duì)于他們來(lái)說(shuō)也就意味著創(chuàng)造世界。也只有這樣的人,才值得我們由衷地敬佩和景仰。

責(zé)任編輯:未麗燕 來(lái)源: 代碼灣
相關(guān)推薦

2016-11-24 15:32:35

云計(jì)算

2012-05-10 13:31:48

程序員開(kāi)發(fā)者

2015-04-08 15:38:17

程序員程序員差距

2022-02-24 17:32:38

程序員互聯(lián)網(wǎng)公司離職率

2012-09-24 01:18:32

程序員androidhtml5

2015-04-09 13:36:13

程序員大齡程序員出路

2019-09-16 09:46:05

程序員技術(shù)等級(jí)

2009-04-17 15:48:41

程序員價(jià)值

2017-11-07 20:02:47

程序員未來(lái)

2024-09-03 10:56:49

線程AQS

2018-01-17 10:01:38

程序員高手菜鳥(niǎo)

2019-11-22 10:54:32

程序員收入PC

2017-12-25 10:16:32

程序員Python常用工具

2013-04-28 11:03:41

編程語(yǔ)言程序員私有云

2009-05-27 09:31:41

2012-06-08 09:57:25

2022-07-27 14:53:51

Windows 11微軟游戲

2019-12-19 16:22:38

程序員征文

2012-05-14 10:00:47

51CTO技術(shù)周刊

2020-02-22 21:51:43

程序員Microsoft SServerSQL
點(diǎn)贊
收藏

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