如果你要成為一個(gè)優(yōu)秀的程序員,你還可以需要有幾件事你需要注意,如果你能讓下面幾條成為你的習(xí)慣,那么你才能真正算得上是優(yōu)秀程序員。
1. 只做需要做的工作
使用敏捷方法;
全心全意做UX設(shè)計(jì);
溝通第一;
編碼也許不是解決問(wèn)題的辦法;
過(guò)早的優(yōu)化是一切罪惡的根源;
選擇最簡(jiǎn)單的解決方案。
2. 站在巨人的肩膀上
使用開(kāi)源框架;
使用簡(jiǎn)潔語(yǔ)言;
不要做重復(fù)的事情(不要重新發(fā)明輪子);
利用包管理器來(lái)進(jìn)行公共和私有代碼分配;
不要任憑巨頭(如微軟)的擺布而修復(fù)庫(kù)中的一個(gè)Bug;
不要讓你的雇主逼你學(xué)習(xí);
自主學(xué)習(xí)并為自己設(shè)定新的目標(biāo)。
3. 了解數(shù)據(jù)結(jié)構(gòu)和算法
如果你不知道什么時(shí)候應(yīng)該使用快速排序、不懂辨認(rèn)O(n2)程序、不會(huì)寫(xiě)遞歸函數(shù),你將無(wú)法成為10倍效率的開(kāi)發(fā)者。使用多種語(yǔ)言你才能清楚不同的框架是如何解決相同問(wèn)題的。盡可能去了解底層命令(plumbing),以便能夠作出明智的決定(Web框架是怎么存儲(chǔ)session狀態(tài)的?Cookie到底是什么?)。
4. 不要怕買(mǎi)工具,它可以節(jié)省你的時(shí)間
Ben說(shuō):“昨天我花50美元買(mǎi)了一個(gè)位圖字體工具,它幫我節(jié)省的時(shí)間成本絕對(duì)超過(guò)200美元?!?/p>
5. 集中注意力
不要整天開(kāi)著你的電子郵件、Twitter、Facebook等,在工作時(shí)將它們最小化或關(guān)掉它們,戴上耳機(jī)。Tiny hack說(shuō):“即使不聽(tīng)音樂(lè)我也戴著耳機(jī)工作,這樣便不會(huì)有人打擾到我?!?/p>
6. 盡早并且經(jīng)常性地進(jìn)行代碼重構(gòu)
有時(shí),你不得不放棄漂亮的代碼轉(zhuǎn)而去尋找真正對(duì)項(xiàng)目有用的代碼,但沒(méi)關(guān)系,如果你的現(xiàn)有項(xiàng)目中有這樣的代碼,最好的方式便是不要看它,并重構(gòu)。
7. 只管去做
將你的業(yè)余項(xiàng)目分享到Startup Weekend中。在我開(kāi)始轉(zhuǎn)到Unix和Ruby on Rails上之前,我買(mǎi)了一臺(tái)Mac,使用Windows虛擬機(jī)花了一年時(shí)間做.NET項(xiàng)目。
8. 挑選一個(gè)編輯器,并掌握它
高效開(kāi)發(fā)者喜歡用文本編輯器勝過(guò)IDE編輯器,因?yàn)檫@樣可以學(xué)到更多東西。無(wú)論什么情況,盡量使用鍵盤(pán)快捷鍵,因?yàn)槭炀毷褂靡患ぞ叩那疤崾鞘煜に?/p>
在選擇編輯器時(shí),認(rèn)真考慮并挑選最好的(Emacs或Vim),因?yàn)樗鼈兪峭ㄓ玫?。其次,挑選你的首選平臺(tái)最支持的。使用宏,不斷地寫(xiě)代碼;使用Mac上的TextExpander為整個(gè)段落創(chuàng)建快捷方式;使用Visual Studio或SublimeText的自動(dòng)補(bǔ)齊功能;使用支持按行/列分割窗口的編輯器,這樣你便能同時(shí)看到單元測(cè)試和代碼(或模型、視圖)。
一定要想清楚后再寫(xiě)代碼。Adam說(shuō),“我有朋友在一個(gè)大項(xiàng)目組里工作,他們組里最高效的程序員是一個(gè)高位截癱用嘴叼著棍子敲代碼的人,他總是在寫(xiě)代碼之前想得很仔細(xì)且很少出錯(cuò)。”
9. 整潔的代碼勝過(guò)巧妙的代碼
要想讓其他人能夠讀懂你的代碼,盡量使用最少的代碼來(lái)完成任務(wù)。遵循DRY(Don’t repeat yourself)的原則,使用明確定義的對(duì)象和庫(kù),將任務(wù)分解成小而簡(jiǎn)單的代碼段。
10. 潛意識(shí)是強(qiáng)大的工具
離開(kāi)10分鐘往往就可以解決一個(gè)問(wèn)題??刂凭幊虝r(shí)間,給自己一個(gè)多姿多彩的生活,勞逸結(jié)合能讓你在工作時(shí)更高效、更愉悅。當(dāng)然,即便是上了年紀(jì)的程序員也知道,以最少的時(shí)間完成最高效的工作是成為10倍效率開(kāi)發(fā)者的必要條件。
作為一個(gè)程序員,我覺(jué)得在職業(yè)生涯中最好的一件事兒就是從電腦前站起來(lái),去拜訪那些在某一領(lǐng)域有所建樹(shù)的人們。
11. 推動(dòng)自身和團(tuán)隊(duì)進(jìn)步
重視批評(píng),以包容的態(tài)度接受批評(píng)并提升自己是非常重要的事情。沒(méi)有這個(gè)基礎(chǔ),你不可能成為一個(gè)高效的開(kāi)發(fā)者。一位智者曾經(jīng)說(shuō)過(guò):“聰明的人善于從自己的錯(cuò)誤中學(xué)習(xí),而智慧的人善于從別人的錯(cuò)誤中學(xué)習(xí)。”
1【行業(yè)秘笈】2024 年平面設(shè)計(jì)趨勢(shì)有哪些?
2【職場(chǎng)秘笈】前端和后端究竟有什么區(qū)別?到底應(yīng)該怎么選呢?
3【職場(chǎng)秘笈】面對(duì)職業(yè)“低谷”期,除了焦慮、抱怨,我們還能做些什么?
4【職場(chǎng)秘籍】沒(méi)靈感,設(shè)計(jì)總監(jiān)是怎么設(shè)計(jì)Logo的?
5華信智原春季師資培訓(xùn)圓滿落幕|技術(shù)賦能教學(xué),助推品質(zhì)課堂
6【職場(chǎng)秘笈】學(xué)會(huì)這幾招,再也不用為簡(jiǎn)歷的項(xiàng)目經(jīng)歷發(fā)愁!
1【人才共建】華信智原與世紀(jì)恒通科技股份有限公司達(dá)成人才共建戰(zhàn)略
2【開(kāi)班典禮】從這一刻出發(fā),為夢(mèng)想助力前行!
3【總監(jiān)進(jìn)課堂】大咖教你試用期如何簽合同?
4華信智原與阿里云南區(qū)運(yùn)營(yíng)商簽署合作
5華信智原UI2212班職業(yè)化面試答辯圓滿結(jié)束