編程初學者應該先學c?
編程初學者建議先學C語言。雖然C++是C語言的超集合,涵蓋C語言的用法,并且在其基礎上進行了擴充。但是,其基礎是C語言。
可以參考語言的使用歡迎度,C語言從沒有跌出前五。同時代的其他語言已經消失在歷史的長河,而C語言的存在年齡就能說明它的價值。下面給出這個建議的原因:
1、C語言可以很好的操縱底層硬件學習語言終會有個目的,是實現一個特定的功能,還是一系列特定的功能。如果從初學者的角度來看,我覺得這個需要實現的功能越簡單越好,同時還要保證能夠得到一定的成就感。因為成就感是支持繼續學習的一個原動力。
如果你在擁有一定的底層硬件知識基礎上學習編程,那么C語言就是最好的語言。它的本身是一門高級語言,但是又兼顧了匯編語言的硬件操作性質。即便只掌握C語言,找工作由企業要,上論壇有問題討論,當講師也有課上,一點問題沒有。
圖片來源于網絡,如有侵權請聯系刪除。基于windows操作系統的計算機底層代碼不開源,沒法定論。但是Linux系統的計算機底層代碼中的u-boot就是使用C語言寫成 。簡單的來說,C語言可以操作硬件,而且能力很強;C語言一樣可以有操作系統,應用一樣很廣泛。
2、C語言是基于過程控制自然語言很多看,就以最近幾年安卓手機的興起和人工智能應用帶來的JAVA、python來說,他們都是基于對象的。同樣,C++也是基于對象。這里有個問題,大家可以思考一下,基于對象的語言種類為什么比基于過程的多得多。
最終,對于程序來講,要解決一個問題是需要將現實中的對象變為程序中的對象。但是對于初學者而言,原始思維方式還是以過程為主的思維方式。先學習C語言,然后再過度可能更加平緩一些,不會輕易放棄學習。
圖片來源于網絡,如有侵權請聯系刪除。
其實不僅僅是C++,很多語言的基礎也是C語言。就比如,JAVA就是在C語言的底層框架上運行了一個虛擬機,以犧牲時間來保證它的兼容性。
3、C語言更接近實現原理因為C語言的誕生比C++早一些,說是早一些,實際上C語言已經用了很久,發現有了一定的不足才催生出C++。比如使用C++編寫一個圖形界面幾句代碼調用一個對象就行,但是C語言可能還要涉及底層的顯示原理。一時半會可能連原理都不清楚。
但是當有了答案再去思考原理這個事情就不僅僅是令人難受了,而是不可忍受,所以很多程序員不愿意使用算法畫一個簡單的圓。我以前的一個安卓的同事就是這樣,一個折線圖不愿意從原理上去實現,而是在會上討論的時候說是移植的時候SDK是那樣規定的。
對于編程,我并不喜歡總是去重復造輪子,但是輪子一定要造一次。
圖片來源于網絡,如有侵權請聯系刪除。以上就是這個問題的回答,歡迎留言、評論、轉發。