提高編程技巧的十大方法
1.學習一門新的編程語言(Learn a new programming language)
學習一門新的編程語言將有助于你開拓新的思維方式,特別是當你使用不熟悉的語言時,你將學習到很多種思維方法應用到語言中。而所學習到的新思維方式,你可以運用在你所熟知的語言中。甚至有時你會使用新學的語言進行你的重要項目。
2.閱讀好的且具有挑戰(zhàn)性的編程書籍(Read a good, challenging programming book)
從書中你將學到很多,雖然實踐很重要,但通過閱讀好的且具有挑戰(zhàn)性編程書籍是你改變思維方式重要的一步。這種具有挑戰(zhàn)性的書籍包括The Art of Computer Programming、Structure and Interpretation of Computer Programs (SICP)、A Discipline of Programming or the famous dragon book。
當然,你可以選擇一些難度較低的書籍,但要避免選擇那些“傻瓜”書籍,即稱能夠在24小時或是21天內教會一切的書籍,從這些書中無法學習到提高編程技巧的內容。
3.加入一個開源項目中( Join an open source project)
加入一個開源項目的優(yōu)勢是什么呢?你可以和其他人(在私人項目中獨自工作過)一起工作,當遇到不熟悉的代碼時,你將會去研究,學習理解一個不熟悉的代碼庫(這應該是很有挑戰(zhàn)性的)
4.解決編程難題(Solve programming puzzles)
你總是能夠解決編程難題,在Project Euler中出現(xiàn)的數(shù)學問題,這或許就是代碼難題中最流行的網(wǎng)站。
你應該試圖去解決代碼問題;程序員在編程過程中總是嘗試用最少的步驟來解決遇到的難題,而在這過程中,你可以學到語言的更深奧和更特殊的功能,從而你會不得不思考代碼的創(chuàng)造性。
5.計劃(Program)
在編程開始之時,制定一個計劃,擬定設計框架并實現(xiàn)它。并重復該操作。通過編寫代碼是學習代碼的做好方式。
你將在錯誤中不斷的學習、提升自己,相比于看書完成項目更加有激勵性同時也帶你帶來更多的樂趣。
6.閱讀學習代碼(Read and study code)
學習著名的軟件編程,如Linux kernel。學習教育的一個很好的操作系統(tǒng)是MINIX3。從中你可以學到很多新的語言用法,對軟件架構能略知一二。雖然閱讀不熟悉的代碼比較困難,但你會受益很多。
通過閱讀可以使你了解更多的API,或者是一門編程語言。
7.閱讀一些編程網(wǎng)站( Hang out at programming sites and read blogs)
閱讀不同的編程網(wǎng)站(如論壇和StackOverflow)將有助于你通過其他程序員獲取知識。
同時,你應該閱讀大量的博客,說起軟件行業(yè)中博客寫的好當屬Joel,(盡管他現(xiàn)在不在寫博客了,很多有價值的文章依然存在文檔里)。Coding Horror and Lambda the Ultimate。
8.書寫代碼(Write about coding)
在博客上練習書寫代碼。你也可以在不同的問答網(wǎng)站上回答問題。同時你也可以寫一些教程(DreamInCode)。在你編寫代碼時,你會想著要正確編寫,為能夠解釋其中的問題和技術。編寫代碼還能夠體現(xiàn)你的編程知識,提供你英語語法,這些在編程中都是很重要的。
9.學習基礎的編程語言( Learn low-level programming)
學習基礎編程語言,它們能夠幫助你理解基層架構。比如C語言,或是匯編語言。
學習計算機是如何執(zhí)行程序,知道操作系統(tǒng)是如何運作的,這是程序員最基本的要求。如果你想好好了解基礎語言,你可以閱讀有關電腦結構,操作系統(tǒng),嵌入式系統(tǒng),驅動程序操作系統(tǒng)開發(fā)等等的書籍。
10.有不懂得不要隨便上StackOverflow,自己多想想!(Don’t rush to StackOverflow. Think?。?/strong>
代碼出錯時,你可能會急于用最少的時間去解決它。你會怎么做呢?上StackOverflow網(wǎng)站嗎?別這樣做。要認真思考問題,拿出紙和筆,認真想出解決方案。放松大腦保持頭腦清晰然后再重新看代碼。
如果一小時后還沒解決問題,再嘗試StackOverflow。但要記得,首先要自己思考解決問題哦。