1、紮實的基礎
資料結構、離雜湊數學、編譯原理,這些是所有電腦科學的基礎,如果不能掌握它們,很難寫出高水準的程式。程式人人都會寫,但當你發現寫到一定程度很難再提高的時候,就應該想想是不是要回過頭來學學這些最基本的理論。不要一開始就去學OOP,即使你再精通OOP,遇到一些基本演算法的時候可能也會束手無策。因此多讀一些電腦基礎理論方面的書籍是非常有必要的。
2、豐富的想像力
不要拘泥於固定的思考方式,遇到問題的時候要多想幾種解決問題的配置,試試別人從沒想過的方法。豐富的想像力是建立在豐富的知識的基礎上,除電腦以外,多涉獵其它的學科,比如天文、物理、數學等等。開闊的思考對程式師來說很重要。
3、最簡單的是最好的
這也許是所有科學都遵循的一條準則,複雜的品質轉換原理在愛因斯坦眼裡不過是一個簡單得不能再簡單不過的公式:E=mc2。簡單的方法更容易被人理解,更容易實作,也更容易維護。遇到問題時要優先考慮最簡單的配置,只有簡單配置不能滿足要求時再考慮複雜的配置。
4、不鑽牛角尖
當你遇到障礙的時候,不妨暫時遠離電腦,看看窗外的風景,聽聽輕音樂,和朋友聊聊天。當我遇到難題的時候會去玩遊戲,當負責遊戲的那部分大腦細胞極度亢奮的時候,負責程式設計的那部分大腦細胞就得到了充分的休息。當重新開始工作的時候,我會發現那些難題現在竟然可以迎刃而解。
5、對答案的渴求
人類自然科學的發展史就是一個渴求得到答案的程式,即使只能知道答案的一小部分也值得我們去付出。只要你堅定信念,一定要找到問題的答案,你才會付出精力去探索,即使最後沒有得到答案,在程式中你也會學到很多東西。
6、多與別人交流
三人行必有我師,也許在一次和別人不經意的談話中,就可以迸出靈感的火花。多上上網,看看別人對同一問題的看法,會給你很大的啟發。
7、良好的程式設計風格
要養成良好的習慣,程式碼的縮排編排,變數的命名規則要始終保持一致。大家都知道如何排除程式碼中的錯誤,卻往往忽視了對註釋的除錯方法。註釋是程式的一個重要組成部分,它可以使你的程式碼更容易理解,而如果程式碼已經清楚地表達了你的思想,就不必再加註釋了,如果註釋和程式碼不一致,那就更加糟糕。
8、韌性和毅力
這也許是「高手」和一般程式師最大的區別。高手們並不是天才,他們是在無數個日日夜夜中磨煉出來的。成功能給我們帶來無比的喜悅,但程式卻是無比的枯燥乏味。你不妨做個測試,找個10000以內的因數表,把它們全都抄下來,然後再檢查三遍,如果能夠不間斷地完成這一工作,你就可以滿足這一條。
資料結構、離雜湊數學、編譯原理,這些是所有電腦科學的基礎,如果不能掌握它們,很難寫出高水準的程式。程式人人都會寫,但當你發現寫到一定程度很難再提高的時候,就應該想想是不是要回過頭來學學這些最基本的理論。不要一開始就去學OOP,即使你再精通OOP,遇到一些基本演算法的時候可能也會束手無策。因此多讀一些電腦基礎理論方面的書籍是非常有必要的。
2、豐富的想像力
不要拘泥於固定的思考方式,遇到問題的時候要多想幾種解決問題的配置,試試別人從沒想過的方法。豐富的想像力是建立在豐富的知識的基礎上,除電腦以外,多涉獵其它的學科,比如天文、物理、數學等等。開闊的思考對程式師來說很重要。
3、最簡單的是最好的
這也許是所有科學都遵循的一條準則,複雜的品質轉換原理在愛因斯坦眼裡不過是一個簡單得不能再簡單不過的公式:E=mc2。簡單的方法更容易被人理解,更容易實作,也更容易維護。遇到問題時要優先考慮最簡單的配置,只有簡單配置不能滿足要求時再考慮複雜的配置。
4、不鑽牛角尖
當你遇到障礙的時候,不妨暫時遠離電腦,看看窗外的風景,聽聽輕音樂,和朋友聊聊天。當我遇到難題的時候會去玩遊戲,當負責遊戲的那部分大腦細胞極度亢奮的時候,負責程式設計的那部分大腦細胞就得到了充分的休息。當重新開始工作的時候,我會發現那些難題現在竟然可以迎刃而解。
5、對答案的渴求
人類自然科學的發展史就是一個渴求得到答案的程式,即使只能知道答案的一小部分也值得我們去付出。只要你堅定信念,一定要找到問題的答案,你才會付出精力去探索,即使最後沒有得到答案,在程式中你也會學到很多東西。
6、多與別人交流
三人行必有我師,也許在一次和別人不經意的談話中,就可以迸出靈感的火花。多上上網,看看別人對同一問題的看法,會給你很大的啟發。
7、良好的程式設計風格
要養成良好的習慣,程式碼的縮排編排,變數的命名規則要始終保持一致。大家都知道如何排除程式碼中的錯誤,卻往往忽視了對註釋的除錯方法。註釋是程式的一個重要組成部分,它可以使你的程式碼更容易理解,而如果程式碼已經清楚地表達了你的思想,就不必再加註釋了,如果註釋和程式碼不一致,那就更加糟糕。
8、韌性和毅力
這也許是「高手」和一般程式師最大的區別。高手們並不是天才,他們是在無數個日日夜夜中磨煉出來的。成功能給我們帶來無比的喜悅,但程式卻是無比的枯燥乏味。你不妨做個測試,找個10000以內的因數表,把它們全都抄下來,然後再檢查三遍,如果能夠不間斷地完成這一工作,你就可以滿足這一條。
沒有留言:
張貼留言