(轉(zhuǎn)載)編程老手的哪些特點(diǎn)杆麸,是值得新手程序員學(xué)習(xí)的?

作為一個(gè)經(jīng)驗(yàn)豐富的程序員浪感,有哪些事情是你希望在一開始編程的時(shí)候就知道的昔头?或者換個(gè)方式來說,你認(rèn)為每個(gè)新手程序員應(yīng)該做或者學(xué)什么才能讓自己的編程水平更好影兽?

有經(jīng)驗(yàn)的程序員會(huì)做到下面 29 項(xiàng)事情揭斧,這也是每個(gè)新手程序員應(yīng)該知道的事情。

如果你想成為更好的開發(fā)者峻堰,你應(yīng)該尤其注意第 15 點(diǎn)和第 29 點(diǎn)讹开。

1.積極大膽地谷歌。你得知道如何有效地組織搜索關(guān)鍵字茧妒,查閱別人寫的代碼萧吠,然后合理地用在代碼里,從而解決問題桐筏。

2.擁抱變化纸型,堅(jiān)持不懈。老手程序員在接觸新技術(shù)時(shí)梅忌,能欣然接受像個(gè)初學(xué)者一樣處處受挫狰腌,并總能在完成工作的同時(shí)自學(xué)成才。

3.承認(rèn)細(xì)節(jié)的重要性牧氮。例如變量和函數(shù)的命名琼腔、CSS 屬性的命名、該用哈希還是用數(shù)組踱葛,以及其他看起來微不足道丹莲,但可能對(duì)項(xiàng)目有深遠(yuǎn)影響的事情光坝。

4.承認(rèn)大多數(shù)的“重要決定”其實(shí)并沒有那么重要。一般的開發(fā)者經(jīng)常在技術(shù)選型等“重大問題”上陷入唇槍舌戰(zhàn)甥材,而程序員老鳥們會(huì)避免浪費(fèi)時(shí)間在罵戰(zhàn)中盯另。這一點(diǎn)上,他們就像禪宗大師一樣(zen-like)洲赵。

5.選擇合適的工具解決問題鸳惯。網(wǎng)上有無數(shù)的開源庫、工具和框架叠萍,讓人眼花繚亂芝发。而老手們清楚地知道針對(duì)怎樣的問題,應(yīng)該用什么樣的工具苛谷。

6.明白代碼「不值錢」(該刪就刪)辅鲸。你必須習(xí)慣于刪掉幾百行代碼來重寫程序的某一部分,毫不留情抄腔。

7.在評(píng)估技術(shù)的時(shí)候要全面瓢湃。例如,我一直在鼓吹Elixir赫蛇。它語法優(yōu)美绵患,社區(qū)完善,有很大的潛力悟耘。但Elixir誕生的時(shí)間太短落蝙,所以如果要構(gòu)建復(fù)雜的功能,可能會(huì)難以找到能幫你提高效率的開源工具暂幼。因此筏勒,在評(píng)估要不要選擇使用一項(xiàng)技術(shù)時(shí),你得把所有這些因素都考慮在內(nèi)旺嬉。

8.學(xué)會(huì)說“我不知道”管行。沒有比拒絕承認(rèn)自己不知道更能浪費(fèi)一個(gè)開發(fā)者的時(shí)間了。

9.仔細(xì)分析錯(cuò)誤信息里的線索邪媳。傳統(tǒng)教育告訴我們:失敗是壞事捐顷。報(bào)錯(cuò)信息這種東西也經(jīng)常被跟失敗聯(lián)系起來,然而優(yōu)秀程序員明白雨效,這些錯(cuò)誤消息里其實(shí)隱藏著能將你指向最終正確解決方案的線索迅涮。

10.了解過早優(yōu)化和必要的“炫技式”優(yōu)化的區(qū)別。老手們清楚在什么時(shí)候需要寫一些看上去沒那么好懂徽龟,但會(huì)讓程序運(yùn)行更快的代碼叮姑。

11. 每個(gè)人都會(huì)犯錯(cuò),為自己的過失負(fù)責(zé)据悔。而尤其在團(tuán)隊(duì)里传透,把責(zé)任推來推去沒有任何意義耘沼,因?yàn)殄e(cuò)誤的發(fā)生往往不只是一方的因素造成的。

12. 成為你所用的開發(fā)工具的重度用戶旷祸。如果長期在某個(gè)開發(fā)環(huán)境下有相當(dāng)比例的開發(fā)工作耕拷,那你應(yīng)該去掌握使用它的細(xì)節(jié)。

13. 學(xué)會(huì)用Vim(至少會(huì)一點(diǎn))托享。 你至少應(yīng)該在這個(gè)編輯器里學(xué)會(huì)勉強(qiáng)地移動(dòng)和翻頁。

14. 不要接陌生技術(shù)領(lǐng)域的私活浸赫。個(gè)人做自由職業(yè)項(xiàng)目闰围,其中很大一部分挑戰(zhàn)就是評(píng)估項(xiàng)目時(shí)間。不要規(guī)劃自己未知領(lǐng)域的事情既峡,那會(huì)讓你處于想當(dāng)尷尬的境地羡榴。

15. 不要數(shù)你干活花了幾個(gè)小時(shí)。技術(shù)大牛會(huì)把時(shí)間花在有深度的工作上运敢,并且他們清楚花了多少時(shí)間完全不重要校仑。

16. 學(xué)會(huì)坦然接受批評(píng)。當(dāng)你的代碼因?yàn)楦鞣N原因四分五裂時(shí)传惠,你需要培養(yǎng)用理性和邏輯的方式來應(yīng)對(duì)(而不是情緒化處理)迄沫。

17. 同有更多經(jīng)驗(yàn)的人結(jié)對(duì)編程。沒有比這個(gè)更高效的編程學(xué)習(xí)方式了卦方。

18. 一定要先自己做一遍代碼審查羊瘩。當(dāng)你在GitHub上發(fā)起一個(gè)pull request之前,先把代碼當(dāng)成別人寫的盼砍,自己先審查一遍尘吗。

19. 認(rèn)識(shí)到做自由職業(yè)的難點(diǎn)不是寫代碼,而是其余的所有事情浇坐。銷售睬捶、推廣、客戶支持近刘,質(zhì)量保證以及產(chǎn)品管理擒贸,所有這些都會(huì)花費(fèi)大量時(shí)間。

20. 發(fā)現(xiàn)并解決更大的問題跌宛。優(yōu)秀的程序員不拘泥于眼前的問題酗宋,而是清楚如何用更長遠(yuǎn)的方式徹底的解決這一類問題。

21. 深入了解一些大型開源項(xiàng)目的核心能讓你開發(fā)時(shí)如虎添翼疆拘。如果你知道如何給你的項(xiàng)目打猴子補(bǔ)丁(Monkey Patch), 那么你將無所不能蜕猫。

22. 跳過多數(shù)的會(huì)議。你的公司雇你是來寫代碼的哎迄,而不是談代碼的回右。當(dāng)會(huì)議多到失控的時(shí)候隆圆,不去參加也沒有任何問題。而且一旦你開始這樣做翔烁,別人會(huì)更珍惜你的時(shí)間渺氧。

23.知道什么時(shí)候開始回饋。到了某個(gè)時(shí)候你需要將你的技能和經(jīng)驗(yàn)傳授給年輕的開發(fā)人員蹬屹,就像你的導(dǎo)師當(dāng)時(shí)教授你一樣侣背。

24. 能寫爛代碼。有時(shí)候可以當(dāng)一當(dāng)“膠帶式程序員”慨默。關(guān)鍵是隨著時(shí)間推移贩耐,你需要弄清楚什么時(shí)候可以走捷徑,什么時(shí)候必須走捷徑厦取。這其實(shí)是最難掌握的技能之一潮太。

25. 禮貌地告訴別人你工作到很晚。如果你是辦公室里最后一個(gè)虾攻,可以發(fā)一封簡短的匯報(bào)郵件铡买。別人一般會(huì)注意到郵件上的時(shí)間戳的。

26. 像一個(gè)領(lǐng)導(dǎo)者(Leader)一樣做事霎箍,而不是老板(Boss)奇钞。老板是讓別人為他工作的人,領(lǐng)導(dǎo)者是人們追隨的人朋沮。做個(gè)領(lǐng)導(dǎo)者蛇券。

27. 去打打桌上足球。從長期來看樊拓,同其他開發(fā)者(或不同崗位上的同事)建立聯(lián)系會(huì)比在緊巴巴的期限里交付一個(gè)功能更有價(jià)值纠亚。

28. 在壓力下學(xué)習(xí)。你需要知道如何應(yīng)對(duì)像系統(tǒng)宕機(jī)而你要負(fù)責(zé)將它復(fù)原的情況筋夏,即使一開始你完全沒有頭緒蒂胞。

29. “Move fast and break things” 別讓完美主義阻止你做事。錯(cuò)誤往往是最好的學(xué)習(xí)機(jī)會(huì)条篷。所以別把犯錯(cuò)當(dāng)作失敗骗随,而應(yīng)該把它們當(dāng)作值得學(xué)習(xí)的經(jīng)歷,并意識(shí)到:正是不斷克服和突破這些錯(cuò)誤赴叹,作為一個(gè)程序員鸿染,你才能不斷成長起來。

像生活中的很多事情一樣乞巧,編程也是你做的越多涨椒,了解的就越多。所以如果你是一個(gè)新手程序員,還是直接去編碼吧蚕冬。記得將這些最佳實(shí)踐應(yīng)用在日常工作中免猾,來不斷提升你的編程技藝。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末囤热,一起剝皮案震驚了整個(gè)濱河市猎提,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌旁蔼,老刑警劉巖锨苏,帶你破解...
    沈念sama閱讀 216,402評(píng)論 6 499
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異棺聊,居然都是意外死亡蚓炬,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,377評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門躺屁,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人经宏,你說我怎么就攤上這事犀暑。” “怎么了烁兰?”我有些...
    開封第一講書人閱讀 162,483評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵耐亏,是天一觀的道長。 經(jīng)常有香客問我沪斟,道長广辰,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,165評(píng)論 1 292
  • 正文 為了忘掉前任主之,我火速辦了婚禮择吊,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘槽奕。我一直安慰自己几睛,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,176評(píng)論 6 388
  • 文/花漫 我一把揭開白布粤攒。 她就那樣靜靜地躺著所森,像睡著了一般。 火紅的嫁衣襯著肌膚如雪夯接。 梳的紋絲不亂的頭發(fā)上焕济,一...
    開封第一講書人閱讀 51,146評(píng)論 1 297
  • 那天,我揣著相機(jī)與錄音盔几,去河邊找鬼晴弃。 笑死,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的肝匆。 我是一名探鬼主播粒蜈,決...
    沈念sama閱讀 40,032評(píng)論 3 417
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼旗国!你這毒婦竟也來了枯怖?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 38,896評(píng)論 0 274
  • 序言:老撾萬榮一對(duì)情侶失蹤能曾,失蹤者是張志新(化名)和其女友劉穎度硝,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體寿冕,經(jīng)...
    沈念sama閱讀 45,311評(píng)論 1 310
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡蕊程,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,536評(píng)論 2 332
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了驼唱。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片藻茂。...
    茶點(diǎn)故事閱讀 39,696評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖玫恳,靈堂內(nèi)的尸體忽然破棺而出辨赐,到底是詐尸還是另有隱情,我是刑警寧澤京办,帶...
    沈念sama閱讀 35,413評(píng)論 5 343
  • 正文 年R本政府宣布掀序,位于F島的核電站,受9級(jí)特大地震影響惭婿,放射性物質(zhì)發(fā)生泄漏不恭。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,008評(píng)論 3 325
  • 文/蒙蒙 一财饥、第九天 我趴在偏房一處隱蔽的房頂上張望换吧。 院中可真熱鬧,春花似錦佑力、人聲如沸式散。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,659評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽暴拄。三九已至,卻和暖如春编饺,著一層夾襖步出監(jiān)牢的瞬間乖篷,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,815評(píng)論 1 269
  • 我被黑心中介騙來泰國打工透且, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留撕蔼,地道東北人豁鲤。 一個(gè)月前我還...
    沈念sama閱讀 47,698評(píng)論 2 368
  • 正文 我出身青樓,卻偏偏與公主長得像鲸沮,于是被迫代替她去往敵國和親琳骡。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,592評(píng)論 2 353

推薦閱讀更多精彩內(nèi)容