本人親身經歷,有過這樣的疑惑。開始時也想學什么語言好,又想簡單又想就業好,可是現在回頭看看,當時的想法也僅是當時。現在明白網上大家說語言不是問題,關鍵是基本功,和怎么用。
這樣和你說吧,如果你是計算機出生,你要學c語言,這個不用避開,然后可以根據你的研究方向看看是否學Python。因為c是最基礎的語言,里面涉及很多原理,會讓你了解和嘗試怎么和內存打交道,怎么造各種輪子,非常有助于對計算機的理解和學習。如果你不是計算機專業,但是需要用計算機來處理工作,處理數據,這時候Python就很好。學Python很快,應用面廣,不用從頭造輪子,不用擔心要學更多計算機知識,而且適合各個專業。
上面從學習角度分析c和Python哪個好點。如果要面對就業的話,也要分是否是計算機背景的。如果計算機專業就業,光靠Python是不行的,除非你做大數據,算法之類的,但這個門檻高,一般人達不到,所以同樣建議學c加Python。如果是非計算機畢業的建議學Python,因為你學c比不上那些計算機專業的人,因為公司里面用c的都是寫很底層,需要大量計算機背景和經驗。Python的話需要計算機背景少,大部分公司都用來處理數據畫畫圖之類的。
上面只是自己的片面之談,大多數人一般都學幾門語言,看看最喜歡那個,工作最常用哪個,一兩個月后就會消除這種疑慮了。
每個程序員在他們的編程生涯中都應該學習C語言,因為它有太多難以忽視的好處了。除了它會給你提供更多的工作機會之外,C語言還會教給你更多的關于計算機的知識。它能給我們提供的裨益,,簡單列舉如下:
1.相比較其他的編程語言(像C++,JAVA),C語言是個低級語言。從總體上來說,低級的編程語言可以讓你更好的了解計算機。
2.設備驅動程序和操作系統只能用C語言來編寫。現在,你可能還從來沒有編寫過一個設備驅動程序或者一個操作系統,但是如果你需要去修改他們的時候,怎么辦?
3.如果你想要得到一份編寫微控制器程序的工作的時候,該怎么辦?他們都是用C語言編寫的。就因為不想學習一門新的語言,你就準備限制你能得到工作的機會嗎?
4.C的程序比其他用別的語言寫的程序,實現相同的功能,它用的代碼行數更少,而它帶來的運行效率卻更快。有時候,你的程序所需要的速度,只有C語言能做到。
5.如果你學習過C語言,你就能學習現在任何的高級編程語言。因為所有的高級語言都是以C語言為基礎的(像JAVA,C++,C#等等)。
6.因為C語言已經存在很多年了,它有廣泛的使用團體并且有大量的現成代碼可以利用。這就使你能在過去程序的基礎上,快速和高效的編寫新的算法和函數。
7.C語言是一個開源組織的語言。一個開源組織的產物--LINUX,就是用C語言寫的。如果你會C語言,你就能參加這個組織并且還能向眾多的開源組織投稿,比如參加Source Forge并且給他們投稿。
8.C語言是唯一一個向你闡述指針的本質的語言。而C#和Java干脆跳過了指針這個題目。可是指針確實使C語言變得更加強大。
9.找編程開發方面的工作時,C語言仍然是最普遍需要的語言。所以它值得你花時間去學會它。
10.任何里面有微處理器的設備都支持C語言。從微波爐到手機,都是由C語言技術來推動的。
c++學習難度比較大,世界上沒有幾個人精通,python相對來說語法簡單,更容易上手,python封裝了很多現成的庫,不懂底層實現,照樣可以開發。c++偏底層,對于初學者來說,建議學python,隨著工作經驗的不斷豐富,可以學學c++,這樣更易于理解底層原理的實現。現在人工智能的很多框架都是基于python的,其實底層還是c++,建議先從簡單的開始學,這樣有成就感,利于后面的學習。如果選擇難的學習,容易打擊積極性,不利于初學者!
編程語言說到底就是一種工具,所以不能脫離場景來學習編程語言,對于管理大類專業的同學來說,學習C語言很難有應用場景,所以建議學習Python。
從學習的角度來說,如果未來要考研到計算機專業,那么繼續學習C語言是不錯的選擇,但是如果沒有讀研計算機專業的打算,也沒有進入IT互聯網行業發展的規劃,那么并不建議學習C語言,因為C語言的應用場景主要集中在IT互聯網領域。
目前C、Java、Python這三門編程語言都有大量的用戶,也是流行程度相對比較高的編程語言,但是Python與Java和C不同,Python有很多用戶分布在傳統行業領域,在大數據、人工智能等技術的推動下,未來Python的應用場景會進一步得到拓展。
對于管理類專業的同學來說,在學習Python的過程中,一定要做好學習規劃,在制定學習規劃時,我給出以下三點建議。
其一是要重視數據分析相關知識的學習。
管理專業的同學未來要與大量的數據打交道,而Python做數據處理是比較適合的,有大量的庫可以使用。
在學習數據分析知識的過程中,還需要重視統計學和機器學習相關知識的學習,這雖然可以看成是兩條線,但是都應該接觸一下。
其二是重視積累場景知識。
編程語言的應用一定不能脫離場景,數據分析也是同樣的道理,所以要盡量爭取到一些實踐的機會,可以積極申請參加老師的課題組。
其三是重視新技術的發展趨勢。
編程語言本身的迭代速度并不算快,但是編程語言所依托的技術平臺往往會有較快的更新速度,目前很多編程任務都開始遷移到云端了,所以要重視云計算、大數據、人工智能這些技術的發展趨勢。
最后,如果有學習編程語言相關的問題,歡迎跟我交流。