如何才能當好一名出色的程序員?這是在北京北大青鳥通州校區(qū)學習的學員們一直在想的問題。在此,北京北大青鳥通州校區(qū)的專家要提醒大家,凡事都要有個循序漸進的過程,羅馬不是一天建成的,一夜成名的演員也很少,沒有人能隨隨便便的成功。一名出色的程序員也如此,程序本身是日積月累的。我們要不斷的去豐富自己。充實自己的大腦。這樣才有進步。程序才有自己的風格。
以下是北京北大青鳥通州校區(qū)學術部的講師給將進入程序世界的學員們的一些小建議。
1. 選擇一門好的編程語言,一門你自認為可以用它快速地做出一些有用東西的語言。
不要選擇C語言作為你第一門編程語言。也許選擇C語言會給你一種過時的滿足感。雖然它比早期的匯編語言提供了更好語法描述,但是今天C(或者C++)不是能夠快速編寫軟件的語言。毫不偏袒的說,我建議你學習一種動態(tài)語言。選擇一種你覺得語法(文檔)讓你使用起來更舒服的編程。為此,你可能需要花費一些時間來在幾種不同的語言之間進行比較。這么做目的不是為了讓你感覺更好或者讓編程更容易。更快地完成自己的作品并且能夠看到成果,才是激勵你編程的源動力。不要選擇一門需要某種重量級的IDE(IDE是一種能夠幫助你編寫并運行代碼的工具)才能輕松編程的語言。你所需要的僅僅是一個文本編輯器。
2. 選擇一個好的編輯器。
編輯器對程序員而言,就是像是弓對弓箭手一樣重要。這里有一些推薦的編輯器:
SublimeText 2 – 如果你剛開始編程,推薦使用SublimeText 2
Emacs – 學習曲線陡峭,快捷鍵復雜。如果你想定制自己的使用習慣,需要學習Emacs Lisp.
Vim – 不僅操作簡潔而且它默認包含在linux的發(fā)行版中,所以深受大家歡迎。我開始使用了2年Emacs。由于Emacs的快捷鍵操作過于復雜,我的雙手開始經(jīng)常疼痛,這迫使我轉向了Vim陣營。了解Vim的快捷鍵是非常有必要的。當你在遠程的服務器上編輯代碼時,你唯一不需要安裝的編輯器就是Vim。
注意!Emacs和Vim可能已經(jīng)成為成為古董了。但是,它們都具備一些現(xiàn)代編輯器多不具備的功能。
3. 選擇一個你可以從中學到東西的操作系統(tǒng)
北京北大青鳥通州校區(qū)專家表示:Windows不會教會你任何東西。使用Windows你唯一學會的就是打開一個exe(可執(zhí)行)文件來安裝軟件和使用它。可能剛開始的時候你會覺得很酷,但是長遠來看,如果你立志成為一個web開發(fā)人員,可能還是要具備基本的linux知識,尤其是當你要發(fā)布程序的時候。Linux也允許你根據(jù)自己的要求來定制程序。Macs也很酷,但是我認為你現(xiàn)在經(jīng)濟上還負擔不起。
4. 不要通過復制粘貼來做備份
一個新手程序員通常會把文件復制粘貼到一個臨時目錄下面來進行備份。這也許也是他們唯一知道的方法。北京北大青鳥通州校區(qū)建議:不要那么做!你需要使用版本控制軟件。我強烈推薦使用Git,它是個目前很流行的版本控制工具,而且使用起來非常簡單。對一個Git新手,有一個良好的社區(qū)和很多參考資源來學習。(除了Git之外,還有mercurial, darcs, fossil等等。但是我還是建議從Git開始,我有很多的理由來支持Git,這里就不多費口舌了。)
5. 知道去哪里尋求幫助
參加一個和你相關的(你使用編程工具相關的)程序員社區(qū)。比如StackOverflow就是程序員的Facebook。那里沒有消息狀態(tài)和回復,取而代之的是問題和答案。除此之外還要學會使用IRC。IRC是一種老式的聊天室,現(xiàn)在還在被大多數(shù)開發(fā)人員用來分享技術信息和幫助解決問題。
6. 培養(yǎng)你的禮儀
知道什么時候問問題。你遇到的大多數(shù)問題都是別人碰到過并且在Internet上能夠找到解答的。在IRC或者任何論壇里發(fā)問之前,先搜索一下google(或者blekko)來看看是不是有現(xiàn)成的答案。在IRC上問問題需要有耐心。永遠記住,人們只是處于好心來免費幫助你。有時你發(fā)問以后需要幾個小時才能有回復。所以,耐心等待。除此之外,記得問問題的時候要禮貌。世界很小,你怎么對待別人,別人就會怎么對待你。
7. 結交朋友,技術書籍只能教你解決常見的問題
當你在搗鼓一些程序或者從程序的作者那里學習,你能學到一些書本上沒有的東西。當你散步的時候,請和遇到的朋友打招呼。你肯定不是唯一的程序員。和其他的程序員一起交朋友一起工作。你會注意到,當一群技術愛好者在一起的時候,不論話題是從什么地方開始,最后總是以技術話題收尾。這是必然的現(xiàn)象。所以你可以盡情參與。在你的黃金年齡努力編程,我能告訴你的是,我在開始6年前尋找朋友并開始討論編程,從那時起才學到那些書本和文章不會我的東西。所以我總是說,我的編程經(jīng)驗有6年,因為只有那個時候開始,我才開始與人交流并開始感覺真正地開始學習編程。
8. 參加開源項目
為開源項目編寫代碼能帶來回報。這不僅僅是幫助別人,你留下的代碼會被其他人使用或(可能)改進。當別人給你的代碼添加功能或者提出修改意見時,也是在提高你的編程水平。開源軟件項目不一定要是一個大工程,編寫一個下載youtube視頻的小程序也是很有用的。更重要的是,你會驚奇地發(fā)現(xiàn)你編寫的代碼會成為與他人有效溝通的橋梁。
這些建議希望能對北京北大青鳥通州校區(qū)的學員們能有所幫助,也希望他們在工作中能夠戰(zhàn)勝困難,迎接挑戰(zhàn)。