還記得那個(gè)叫做Justice Gray的人么械姻?他曾經(jīng)試圖在六個(gè)月的時(shí)間里面成為更好的程序員柒啤,這種做法似乎成為了一種眾人追捧的時(shí)尚家肯。
然而很長(zhǎng)一段時(shí)間過(guò)去之后龄砰,其中的大部分人并沒(méi)有如愿以償?shù)某蔀楹玫?a target="_blank" rel="nofollow">程序員。
這里提供給大家一個(gè)簡(jiǎn)單的解決方案讨衣,有一些方法可以讓你在六分鐘之內(nèi)成為更優(yōu)秀的程序員换棚。
你有六分鐘的閑暇時(shí)光,對(duì)么反镇?
我們一起來(lái)吧固蚤!
1. 使用更大的顯示字體
這個(gè)辦法看上去非常簡(jiǎn)單,但是的確很有效果愿险。
打開(kāi)你最喜歡的那個(gè)編程工具颇蜡,將代碼編輯器中的字體調(diào)大价说。我把
10pt 的代碼顯示字體增大到 14pt辆亏,這樣一來(lái),你的屏幕上一次只能顯示出少量的代碼鳖目。
結(jié)果:你被迫去寫一些更為短小精煉的函數(shù)扮叨,這無(wú)疑是一個(gè)好的趨勢(shì)。
(Scott Hanselman也推崇這樣的做法)
2. 讓代碼中的硬編碼字符串部分顯示變得刺眼
我是從Joe Cooney那里學(xué)到這種辦法领迈。
在你最熟悉的那個(gè)編程工具中將代碼編輯器中的字符串設(shè)置為更加顯眼的格式——比如彻磁,紅色字符黃色背景。讓那些字符串顯得非常丑陋狸捅、刺眼衷蜓。這將使你在代碼中下意識(shí)的少寫一些硬編碼字符串,并且時(shí)刻注意代碼中嵌入的字符串尘喝。
3. 找出一個(gè)“模糊”的關(guān)鍵字磁浇,通過(guò)學(xué)習(xí)熟練掌握
你是否明白
"yield" 關(guān)鍵字的作用? 還有什么關(guān)鍵字是你從來(lái)沒(méi)有使用過(guò)的么朽褪?
編程語(yǔ)言中每一個(gè)關(guān)鍵字都有其特殊的用途置吓。學(xué)習(xí)并掌握這些“神秘”的陌生關(guān)鍵字可以使你的編程能力變得異常強(qiáng)大。
這里有一些
.NET 平臺(tái)不同語(yǔ)言的關(guān)鍵字列表:C#,VB.net,F#.
4. 提高1%的測(cè)試代碼覆蓋率
不要為了追求
100% 的自動(dòng)化單元測(cè)試代碼覆蓋率而焦頭爛額缔赠,但是不妨花費(fèi)一些時(shí)間將你的測(cè)試代碼覆蓋率提高一個(gè)百分點(diǎn)衍锚。
有可能對(duì)你來(lái)說(shuō),這就是從
0% 到 1% 的過(guò)程嗤堰,然而這已經(jīng)是一個(gè)巨大的進(jìn)步戴质。
代碼中復(fù)雜的正則表達(dá)式或者重要的業(yè)務(wù)邏輯必需要有單元測(cè)試來(lái)確保正確無(wú)誤。
5. 閱讀一些開(kāi)源項(xiàng)目的源代碼
當(dāng)我看到一段完全陌生的代碼的時(shí)候,通常會(huì)有一種奇怪的感覺(jué):似乎是溜進(jìn)了鄰居家的屋子置森,并且窺視他們家冰箱里面的物品斗埂。
我們需要慢慢適應(yīng)這樣的情緒,并且從他人的代碼中學(xué)習(xí)凫海。
也許你可以從這個(gè)Hanselman's Weekly Source Code系列開(kāi)始呛凶。
6. 使用靜態(tài)代碼分析工具來(lái)檢查自己的代碼
你可以使用fxcop, 或者StyleCop行贪、clonedetective漾稀、ndepend、 Visual Studio 2008 附帶的code metrics feature,
或者其他自選的靜態(tài)代碼分析工具建瘫。
使用這些工具可以發(fā)現(xiàn)隱匿在你的代碼深處的缺陷崭捍。哪怕僅僅是瞥一眼分析結(jié)果,也可以讓你發(fā)現(xiàn)自己的代碼還存在很多可以改進(jìn)的地方啰脚。
7. 找出有“壞味道”的代碼進(jìn)行重構(gòu)
其實(shí)你自己心理清楚那些“壞味道”在哪里——就是你羞于承認(rèn)殷蛇,看上去很可怕,又臭又長(zhǎng)橄浓,同時(shí)對(duì)整個(gè)應(yīng)用非常重要的代碼粒梦。
你不必把那些朽木雕琢成鉆石,但是可以把他們變得稍微干凈一些——重新命名一些變量荸实,或者將其中的一部分代碼獨(dú)立出來(lái)匀们,從簡(jiǎn)單的操作開(kāi)始,小心翼翼逐步推進(jìn)准给。
8. 停止閱讀泄朴,開(kāi)始編碼
不要僅僅是寫那些簡(jiǎn)單重復(fù)的代碼,寫一個(gè)編譯器吧露氮!
這篇
ol 寫的 MSDN上 的文章是一個(gè)非常好的起點(diǎn)祖灰。Joel Pobar將指導(dǎo)你在短時(shí)間內(nèi)寫出一個(gè)屬于自己的語(yǔ)言的編譯器。
以上這些就是成為優(yōu)秀程序員的方法畔规,你明白了么局扶?
有什么方法可以在六分鐘之內(nèi)完成,并且?guī)椭愠蔀楦鼉?yōu)秀的程序員么油讯?
好了同學(xué)們详民,我能介紹的也都全部介紹完給你們了,以上的部分就是我想說(shuō)的內(nèi)容陌兑,如果你也想在IT行業(yè)拿高薪沈跨,打扎實(shí)自己的基本功,可以參加我們的JAVA全棧晉階訓(xùn)練營(yíng)課程兔综,選擇最適合自己的課程學(xué)習(xí)饿凛,技術(shù)大牛親授狞玛,7個(gè)月后,進(jìn)入名企拿高薪涧窒。我們的課程內(nèi)容有:反射原理心肪、枚舉原理與應(yīng)用、注解原理纠吴、常用設(shè)計(jì)模式硬鞍、正規(guī)表達(dá)式高級(jí)應(yīng)用、JAVA操作Office原理詳解戴已、JAVA圖像處理技術(shù)固该,等多個(gè)知識(shí)點(diǎn)的詳解和實(shí)戰(zhàn)。如果你想拿高薪的糖儡,想學(xué)習(xí)的伐坏,想就業(yè)前景好的,想跟別人競(jìng)爭(zhēng)能取得優(yōu)勢(shì)的握联,想進(jìn)阿里面試但擔(dān)心面試不過(guò)的桦沉,你都可以來(lái),群:240448376注:加群要求
1金闽、具有1-2工作經(jīng)驗(yàn)的纯露,面對(duì)目前流行的技術(shù)不知從何下手,需要突破技術(shù)瓶頸的可以加呐矾,或者優(yōu)秀應(yīng)屆生屬性的苔埋。
2懦砂、在公司待久了蜒犯,過(guò)得很安逸,但跳槽時(shí)面試碰壁荞膘。需要在短時(shí)間內(nèi)進(jìn)修罚随、跳槽拿高薪的可以加。
3羽资、如果沒(méi)有工作經(jīng)驗(yàn)淘菩,但基礎(chǔ)非常扎實(shí),對(duì)java工作機(jī)制屠升,常用設(shè)計(jì)思想潮改,常用java開(kāi)發(fā)框架掌握熟練的,可以加腹暖。
4汇在、覺(jué)得自己很牛B,一般需求都能搞定脏答。但是所學(xué)的知識(shí)點(diǎn)沒(méi)有系統(tǒng)化糕殉,很難在技術(shù)領(lǐng)域繼續(xù)突破的可以加亩鬼。
5.阿里Java高級(jí)大牛直播講解知識(shí)點(diǎn),分享知識(shí)阿蝶,多年工作經(jīng)驗(yàn)的梳理和總結(jié)雳锋,帶著大家全面、科學(xué)地建立自己的技術(shù)體系和技術(shù)認(rèn)知羡洁!
6.小號(hào)或者小白之類加群一律不給過(guò)玷过,謝謝。
最后筑煮,每一位讀到這里的網(wǎng)友冶匹,感謝你們能耐心地看完。覺(jué)得對(duì)你有幫助可以給個(gè)喜歡咆瘟!希望在成為一名更優(yōu)秀的Java程序員的道路上嚼隘,我們可以一起學(xué)習(xí)、一起進(jìn)步