為什麼C語言詭異離奇、缺陷重重,卻獲得了巨大的成功?

作者:東輝在線;
來源:程序員互動聯盟

已經使用了C語言十幾年了,今天還在寫C語言代碼,C語言算是很多編程語言祖師爺了,已經取得了巨大的成功但還是很多人對於C語言存在很大的偏見,覺得C語言裡面很多語法彆扭,特別是指針的使用讓很多人吃盡了苦頭,工作十幾年前前後後玩過幾種編程語言,c++,java等比較來看還是C語言簡單些,C語言的難點整體來看也就那幾個

1.指針用法

2.函數

3.遞歸

4.內存管理

為什麼C語言詭異離奇、缺陷重重,卻獲得了巨大的成功?


指針和回調函數以及內存管理都有緊密的關係,所以一旦指針概念突破不了很難全面理解透徹,因為指針靈活方便,但造成了多少不方便之處,有多少人在卡在指針上,記得剛學C語言那陣子,指針概念學的差不多了,覺得自己無往不利了,就開始從圖書館了借了一本linux內核解讀,差不多有1000多頁,心想既然linux內核都是C語言寫的,基礎知識點都掌握的差不多了可以看一些大項目了,由於書開始做了大量的註釋基本的概念還是能看懂,結果看到90多頁就有點頂不住了,堅持了幾天徹底放棄了,才知道這裡面道行很深,不是看懂了概念就能什麼就能搞明白,於是老老實實回來繼續研究基礎了,學習任何一種編程語言都需要有一個循序漸進的過程,遇到困難堅持不下去在心裡永遠覺得很難,後來做了幾個嵌入式項目之後,再去看這本書感覺已經大不一樣了,但還是有看不懂的。

為什麼C語言詭異離奇、缺陷重重,卻獲得了巨大的成功?


後來接觸C++項目,又會發現C語言的和C++根本沒法比,會覺得C語言簡直簡單太多,詭異離奇、缺陷重重這個詞更加適合放在C++上面,C語言比C++溫柔多了,而且C++語法細節還在不停的更新,給人一種永遠學不完的感覺,很多初學者開始學習發現能編譯過去就是一種幸福了,有多少人卡在泛型編程上不能自拔,不太建議剛學編程的小夥伴直接直接切入學習C++,容易打擊到學習編程的自信心,當然初學循序漸進的學習也是可以的,可以先從面向對象編程語言的基本概念開始,然後慢慢切入到泛型編程裡面,C++雖然難卻是很多架構師的最愛,而且做的時間越長感覺越長。

為什麼C語言詭異離奇、缺陷重重,卻獲得了巨大的成功?


java是一門入門簡單但要成為高手很難的編程語言,可能入門幾個月就能搞定,越做發現裡面的套路越多,高級語言的主要點在框架思想上,因為很多語法細節都集成了工具或者庫裡面,如何把這些工具或者庫集成在一起,然後中間添加功能不影響主體功能,性能還不會下降太多,真是需要一個長期積累的過程。


分享到:


相關文章: