10個習(xí)慣助你成為一名優(yōu)秀的程序員

當談到編程時,很多人應(yīng)該都有聽過10x程序員的說法。 據(jù)說一個10x程序員的效率大約是其他程序員的10倍。

這是一個有爭議的話題,無論你選擇相信10x程序員,還是認為這十分可笑,下面的10個習(xí)慣可以在一定程度上助你成為一名勢不可擋的優(yōu)秀程序員。

1、積極使用搜索工具

作為開發(fā)人員,你需要了解如何利用搜索解惑,查看其他人對你正在研究的主題所討論的話題和內(nèi)容,并將學(xué)到的知識應(yīng)用于手頭的項目。

當面臨一個問題,優(yōu)秀的程序員應(yīng)該知道如何花很少時間去查驗和解決手頭的問題。

2、保持初學(xué)者心態(tài)

技術(shù)發(fā)展如此之快,需要不斷地學(xué)習(xí)新技術(shù)。?因此,當沒有經(jīng)驗的時候,你需要適當?shù)赜眯碌囊暯强创虑?。?yōu)秀的開發(fā)人員享受作為新技術(shù)的初學(xué)者的過程,并掌握自我教育的節(jié)奏,以盡快自給自足。

每個專家在某個時間點都可能是一個初學(xué)者。 而且有這么多的技術(shù),即使在某個技術(shù)領(lǐng)域是專家,在另一個可能就是菜鳥。

3、將小事做好

當編寫程序時,它通常會讓你覺得需要做出十億個決定,即使你只是添加一個小功能。 你需要考慮諸如命名變量、調(diào)用函數(shù)、命名CSS屬性、使用hash與使用數(shù)組、命名事物等等。

為你干的事情做好命名是編程中一個重要的部分。 這不容易, 但很重要。有開發(fā)人員還開玩笑說,在計算機科學(xué)領(lǐng)域有兩個難題:緩存無效+命名。

新程序員通常不會對變量和函數(shù)命名足夠重視, 普通程序員會花更多的時間去思考它,而優(yōu)秀的程序員已經(jīng)通過之前遇到錯誤和問題學(xué)到了經(jīng)驗。 他們找到了來幫助他們命名變量的模式,他們甚至不需要再去考慮它,因為一直沿用相同的方式命名就好。

4、收放自如

在構(gòu)建應(yīng)用程序的過程中,往往需要做出重大決策,這將影響你如何編寫大多數(shù)代碼。例如,在ruby中,你可能需要權(quán)衡MiniTest和RSpec之間的區(qū)別。 人們對于這些類型都有著強烈的自我意見和看法,因此容易引起爭執(zhí)。 但是優(yōu)秀的開發(fā)人員想法不同,往往不太在意這些,他們重視編寫、測試的習(xí)慣,他們知道你使用的具體工具其實不那么重要。

優(yōu)秀的程序員往往不參與其他開發(fā)者的相互爭執(zhí)和指責(zé)中,他們更收放自如。

5、使用正確的工具

在編程中,有許多不同的開源庫、工具和框架可供使用。 優(yōu)秀的程序員不斷地評估他們正在使用的工具,并找出為工作選擇正確工具的方法。 由于他們習(xí)慣自給自足,他們愿意承受學(xué)習(xí)新東西的痛苦,只要它們能幫其提升效率。

有很多的開發(fā)人員喜歡去搜索和查看相關(guān)的文檔、博客文章來比較工具,并最終選擇一個單一的工具。但優(yōu)秀的開發(fā)人員會將他們的研究縮小到2-3個選項,并迅速將這些工具應(yīng)用到他們的項目,以了解它們是如何在他們的環(huán)境中工作的。

6、理解“code is cheap”

優(yōu)秀的程序員往往可以產(chǎn)生更多的產(chǎn)出,因為他們不會被沉沒成本誤導(dǎo)。這些東西很容易導(dǎo)致人們做出不合理的行為,特別是在編寫代碼的時候……

在編碼中,沉沒成本的誤導(dǎo)涉及到花費在解決某個問題上的時間。例如,考慮一個場景,其中某人開始為項目編寫代碼,并預(yù)計需要大約一個星期。他們根據(jù)這個預(yù)期做出決定,在完成項目一整個星期后,他們意識到它實際上需要一個月。大多數(shù)開發(fā)人員將繼續(xù)他們已經(jīng)開始的路徑走下去,證明他們的決定,并展示已經(jīng)做了一個星期的進展來進行說服自己。

但是優(yōu)秀的開發(fā)者思考方向不同:

“有一種其它的方法,我認為只需要半個月就能搞定。這意味著如果采取這種方法,它將可能比我保持現(xiàn)在的路徑一直走到底要快兩倍。”

7、使用正確的技術(shù)

一群人在屋里評估技術(shù),然后忽略掉一個在特定技術(shù)里的大拿這種情況并不罕見。?

例如,我非常有聲望,我對 Elixir 編程語言很是看好。但是這項技術(shù)很新,如果想要實際構(gòu)建復(fù)雜的功能,可能會相對其它更難找到相應(yīng)的開源技術(shù),這將提升團隊構(gòu)建的難度。

解決問題需要最實際的決定,使用的技術(shù)應(yīng)該是基于它能夠很容易在2016年,在目前實現(xiàn)。在2017年、2018年、2020年,技術(shù)可能會有所不同,那時候再根據(jù)需要進行調(diào)整。

8、不知道就說“不知道”

拒絕承認你不知道的東西是很容易導(dǎo)致浪費你時間的事情。 作為一個優(yōu)秀的程序員,你要明白你的自我價值并不受那些你不懂的東西束縛。?

初學(xué)者經(jīng)常難以發(fā)現(xiàn)最新技術(shù)的發(fā)展趨勢,優(yōu)秀的開發(fā)者會意識到,他們所知道的每一種技術(shù)(編程語言,框架,庫等)都可能不再是明天的可行選擇。 他們會提前考慮更高級別的編程方式和問題解決方式。

9、始終分析錯誤消息中提示的線索

傳統(tǒng)教育告訴我們,失敗是不可取的。當學(xué)習(xí)代碼時,錯誤消息通常與失敗相關(guān)聯(lián)。學(xué)習(xí)如何排除故障和調(diào)試錯誤消息是一個重要的技能。

還值得注意的是,開發(fā)人員可能會再次遇到類似的錯誤消息。你應(yīng)該專注于學(xué)習(xí)如何解決問題,以及為什么你需要解決它們。這樣做將允許你以更快的速度修復(fù)類似的錯誤。

10、不安于目前的成功

錯誤往往是最好的學(xué)習(xí)機會, 所以不要把錯誤當作失敗。 相反,將他們當作可學(xué)習(xí)的機會,并評估如何防止情況下一次發(fā)生。成長的關(guān)鍵是理解如何使同樣的錯誤只有一次。

編程,就像生活中的許多事情一樣。這就是為什么這么多的行為,能幫助你做好一名優(yōu)秀的程序員,也能幫你在日常生活中做一個優(yōu)秀的人。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容