天天看點

不學烏班圖直接學python_入門是不是應該選擇C而不是直接學Python?

隻能分享一點自己的經曆和體會吧。

我開始寫代碼的時候,大學學的 C 語言早就忘光了,對計算機隻能算是有初步了解,當時的目的是快速做出東西來,因為工作中要用到,于是很自然地選了 python。當然,python 也沒有辜負我,轉型技術後,我現在也還靠 python 混飯吃。

C 語言更接近底層是毫無疑問的,但對新手不如 python 友好也是肯定的。現在的市場上,似乎支援從 python 入門程式設計的人多一些,其中當然有些是教育訓練行業的水軍,但平心而論,現在讓我回頭選,也還是會從 python 開始學習程式設計。

原因無它,就是用 python 可以快速做出東西來。程式設計是一門實踐性很強的技術,而實踐一定是目标驅動的,能很快搭一個自己的部落格,寫一個爬蟲抓自己想要的資料,甚至調幾個庫就實作一些 AI 應用,不是很有吸引力嗎?C 語言的具體應用場景沒有這麼豐富,學起來沒那麼有趣,練習也少,就會影響效果。

---

如果想走程式設計這條路,單學 python 肯定是不夠的,很大機率後面要補課,補課的一方面就是學一些更接近底層的語言,學習 C 語言也是常見操作。工作幾年後,就不會對語言有什麼限制性想法了,都需要盡力了解,盡力學習。

當然,補課的更重要方面是計算機基礎和程式設計方法論。也就是計算機組成、資料結構和算法、資料庫、代碼管理、測試等。

真要從底層學起,那 C 語言也不是第一步,第一步是學計算機組成原理——有必要嗎?我覺得沒必要。對自學者來說,這是要後面慢慢做的功課,沒有辦法一蹴而就的。

如果不想走程式設計這條路,基本就不要考慮這些了(當然,python 寫多了,對很多底層概念自然也會慢慢熟悉起來)。

---

書和網課到處都有推薦,就不推薦了,不過有一點要提一下,我後來也是看《the C programming language》學的 C,雖然算是經典,作者來頭也很大,但感覺寫得不是很清楚詳細,偏簡潔,很多概念沒有多介紹(或者根本就沒介紹),不建議作為入門讀物。

事實上,我有相當把握,那些推薦你用這本書入門程式設計的人,應該都沒有看過這本書。