神級程式設計師30年編程經驗給入門新手一些小建議
文章推薦指數: 80 %
這篇文章總結自己在初學編程的一些經驗。
C語言/C++編程開發496926338
Step 1 明確學習編程的目的
不同的人學習編程的目的是不同的,有的是為了進入CS相關的行業,有的是為了進入編程需求比較高的其他行業,有的只是為了學習一些編程思想。
因此,作為一個初學者的你,首先就要明確你是哪一種人。
不同的人對於程式語言、對於計算機理論、對於軟體開發知識的需求是有非常大的差距的。
比如,如果你像我們一樣用編程來獲取數據、儲存數據、處理數據、分析數據,那麼就應該把重點放在數據相關的編程知識上面,在不必要的時候就暫時不去擴展其他知識。
Step 2 選擇一條路徑
注意,這裡強調「一條」這個數字。
初學者很容易陷入學什麼語言、學Python2還是3、用什麼教材、看什麼視頻或者教程的問題,或者看了很多大牛的建議而不知道怎麼選擇。
最簡單的方法是,看哪個順眼就看哪個的建議。
(其實隨機選也差不多……)為什麼呢?對於初學者,最難的事情就是克服「編程很難」的恐懼心理,而至於學的多深入多全面並不是重點。
與其糾結哪扇門最接近終點,不如直接先踹開一扇門,然後再去找更好的路。
當然,也許你還會疑惑,沒關係,先進入下面的環節。
Step 3 學習基本語法
這個大家都懂。
但是強調一點,學習一個語言的數據結構和控制語句等知識的時候,首先不要糾結於處理某一個數據結構(比如字符串)的方法或者函數,而是要先去了解都有哪些數據結構和循環語句,為什麼要抽象出來這樣的數據結構和循環語句。
tep 4 學習編程思想
無論是五行、五十行、五百行、還是五千行、五萬行的程序,程序設計思想都是貫穿任何程序的誕生的始終的。
所以,程序設計思想是學習編程的核心。
從組織一個函數(function),到組織一個類(class),到組織一個模塊(module),到組織一個工程(project),自頂層向下設計、模塊化編程、三種編程範式(面向對象、面向過程、函數式)、可維護、可拓展性等等組織代碼的思想,都是相通的,這也是一個全面提高人的設計思維、解決問題的能力的過程。
Step 5 實戰
編程是為了解決需求的,那麼最好的學習其實還是learning by doing。
有了一定的基礎以後,就去找一個可能解決的問題,然後在解決問題的過程中尋找問題,解決問題,優化方法。
這句話說的很簡單,但是在真正做的時候,非常需要耐心和機智,更需要堅持。
這個過程是最艱難的一步。
那具體要怎麼做呢?在分享的同時我自己也推薦一個學C/C++的學習群496926338無論你是大牛還是小白,是想轉行還是想入行都可以來了解一起進步一起學習!群內有很多乾貨和技術分享!
總結
看起來是一個會走很多彎路的過程。
然而,對於所有的學習,特別是自學都是一樣的:與其去糾結哪條路最直,不如走下去。
因為,那樣的直路本來就不存在。
一條斷斷續續的「直路」遠遠比不上一條蜿蜒曲折但是卻一直延續的「彎路」更有價值。
自己走出來的路,才是最適合自己的路。
更重要的是,去克服一個自己本來覺得解決不了的困難,那種喜悅和增加的自信心,會伴隨今後的學習,學習能力的積累也會讓後面的學習越來越容易。
這才是來自自學的真正財富吧。