很多年輕的程序員發(fā)emails給我,說希望能夠得到一些如何盡快躋身優(yōu)秀程序員行列的建議和方法。關(guān)于這個(gè)問題,我已經(jīng)有提到過很多次,現(xiàn)在已經(jīng)沒什么可以補(bǔ)充的了。不過為了滿足大家的要求,在這里我再詳細(xì)地歸納總結(jié)一下:
——和其他開發(fā)人員協(xié)作。編程已經(jīng)進(jìn)入了“地球村”的輝煌時(shí)代,無論我們身在哪里,無論我們?yōu)檎l工作,只要擁有可愛的互聯(lián)網(wǎng),我們就可以和世界上任何一個(gè)角落的程序員一起攻克代碼難題、合作開發(fā)各種軟件。并且,現(xiàn)在有越來越多的開發(fā)人員,在網(wǎng)上把他們豐富的經(jīng)驗(yàn)教訓(xùn)總結(jié)出來,提供給大家共享。我的朋友Evan Light利用開放的辦公時(shí)間,正在致力于開發(fā)一個(gè)幫助Ruby使用者們匹配合作的網(wǎng)站。我也在這項(xiàng)目上做過。有沒有興趣做開源軟件?如果有的話請發(fā)郵件給我。讓我們一起協(xié)作吧!
——閱讀經(jīng)典書籍刊物。像《代碼大全》、《程序員修煉之道》、《程序員設(shè)計(jì)實(shí)踐》、《設(shè)計(jì)模式》等等,都挺不錯(cuò)的。比如期刊類的像《快樂碼農(nóng)》(郵件訂閱地址)
——好好利用網(wǎng)絡(luò)資源。這一條必須特別強(qiáng)調(diào)。因?yàn)閹缀跛械木幊讨R我們都可以在網(wǎng)上找到。老實(shí)說,有時(shí)候我會(huì)覺得,所有我需要的編程技能都是在網(wǎng)上學(xué)會(huì)的。
——研究別人的代碼。GitHub萬歲!如果你想學(xué)習(xí)Ruby語言,并且希望能在最快的時(shí)間掌握它,那么可以按《Best of Ruby Quiz》所說的,先鉆研下他人的代碼。
——進(jìn)入本地程序員群。如果沒有這樣類似的群,那么創(chuàng)建一個(gè)。接下來需要做的是組織會(huì)話。不要坐井觀天的以為“老子天下第一”,多多與大家交流,知道自己的不足之處,然后謙虛學(xué)習(xí)。
——寫博客。不要擔(dān)心不知道該寫什么。那些非常有名的博客牛人他們寫的就是:他們自己的編程經(jīng)歷和程序錯(cuò)誤,以及他們是如何克服這些問題的。反思,對于我們學(xué)習(xí)編程的幫助不可估量,而寫博客就是用于反思的手段。而且寫在博客上你還可以得到其他人對你的評價(jià)和建議。
——為開源項(xiàng)目制作補(bǔ)丁。這一點(diǎn)已經(jīng)眾所周知,我就不再贅述了。
——拋個(gè)硬幣,花代表Vim,字代表 Emacs,選擇了之后就開始認(rèn)真學(xué)習(xí)吧。編輯器是你編程生涯中的左膀右臂,所以,一個(gè)強(qiáng)大又靈活的編輯器絕對能讓你的編程水平更上一層樓。
——熟稔一種編程語言是遠(yuǎn)遠(yuǎn)不夠的。但是首先你得學(xué)好一種,這樣你某一天遇到緊急情況,就能迅速應(yīng)對、快速編程,而不必絞盡腦汁、漫無目的、費(fèi)時(shí)費(fèi)力地想(就因?yàn)槟阋呀?jīng)忘記得差不多了)。不過,我想說的是,要是你已經(jīng)掌握了一門,那么是時(shí)候?qū)W習(xí)第二門了,一方面可以驗(yàn)證第一門編程語言,另一方面通過這種方法還可以溫故而知新。而且最好選擇的是風(fēng)格大相徑庭的。我讀過的一篇博文《Seven Languages in Seven Weeks》就給出了關(guān)于此點(diǎn)內(nèi)容超棒的編程范例,有興趣可以看看。
——做一個(gè)編程語言和平臺的郵件列表。有時(shí)候,我們會(huì)找不到正在關(guān)注的博客、黑客新聞、Twitter中的激烈爭辯以及各種發(fā)人深思的討論。這個(gè)時(shí)候郵件列表就大顯威武了,相對于其他手段,它既方便禮貌又實(shí)用多多。
——StackOverflow絕對是你的良師益友。
——不要浪費(fèi)時(shí)間去研究所謂的最好的工具。我曾經(jīng)用了幾周時(shí)間,想為我準(zhǔn)備開工的項(xiàng)目找個(gè)“不鳴而已,一鳴驚人”的最好框架,但是后來卻發(fā)現(xiàn)這個(gè)框架嚴(yán)重限制了我的工作效率。所以,千萬別被“最好”這兩個(gè)字的表象所迷惑,掉進(jìn)坑里。如果你覺得你作為程序員還不算經(jīng)驗(yàn)豐富,那么最好先從有很多用戶使用的語言和框架開始。最最重要的一點(diǎn)是,當(dāng)你遇到障礙物而你越不過去的時(shí)候,你得知道去哪里,才能尋求幫助、拿到更有利的工具。
——不要錯(cuò)過實(shí)習(xí)機(jī)會(huì)。
——不斷練習(xí)、練習(xí)、再練習(xí),因?yàn)樾燎诘暮顾拍軡补喑龀晒Φ幕ǘ?。在工作中寫代碼,在家里寫代碼。好好修煉代碼招式。編程其實(shí)和別的技術(shù)沒什么不同:最后的成功,都?xì)w結(jié)于不斷的練習(xí)和辛勤的努力。
哈爾濱品用軟件有限公司致力于為哈爾濱的中小企業(yè)制作大氣、美觀的優(yōu)秀網(wǎng)站,并且能夠搭建符合百度排名規(guī)范的網(wǎng)站基底,使您的網(wǎng)站無需額外費(fèi)用,即可穩(wěn)步提升排名至首頁。歡迎體驗(yàn)最佳的哈爾濱網(wǎng)站建設(shè)。
