之前發(fā)了一篇初學(xué)者首先應(yīng)該的學(xué)的編程語言,我的建議是C語言,然后有個朋友就私信我說C語言太難學(xué)了,學(xué)會了也沒什么用等等。
正文
一看就是沒看完就開始剛我了,我是建議先學(xué),后邊肯定還得繼續(xù)學(xué)習(xí),有分析稱薪資最高的程序員群體掌握的編程語言為四種。也就是說學(xué)習(xí)C語言只是為了之后更好學(xué)習(xí)其他語言,更好的完成工作內(nèi)容,所以不必糾結(jié)了。
在說些C語言太難的問題,這個難其實是因人而異的,而且學(xué)習(xí)之后的效果也差別很大,所以不是很好定義,但是從大多數(shù)學(xué)習(xí)編程的經(jīng)驗來看,任何一門編程都不算很難,因為這個畢竟是一門工具,并沒有太高的門檻。
光說不行,我說說自己的學(xué)習(xí)C語言的過程。大一稀里糊涂上學(xué)學(xué)了下C語言,但是不算太懂。大二的時候參加因為巧合參加電子設(shè)計大賽,是基于51單片機的(就是一種可編程芯片,使用的是C語言和一少部分匯編),我買了郭天祥老師的51單片機C語言學(xué)習(xí)的書,花了一周的時間看完了書,把視頻也看完了,同時期間把書中的例子也照著做了一遍,這個時候其實我已經(jīng)掌握C語言了,就是這么簡單。(基礎(chǔ)+實踐是最好學(xué)習(xí)C語言的方法)
后邊又參加比賽,學(xué)了更高級的STM32單片機(一種更高級的芯片,編程語言還是C語言和部分匯編),這個時候我就開始磨煉自己對C語言的使用了,期間除了做比賽,還專門看了基本C語言的名著,《C和指針》,《C語言深度剖析》,《算法精解C語言描述》,《C專家編程》等等,這個時候其實感覺做電子競賽編程已經(jīng)不是困然我的因素了,這也就是引出了之后要說的話題---算法,對于軟件開發(fā),硬件基本相同,算法的好壞基本就決定了作品的好壞,這個以后有時間單說。(入門之后深入的方法是研讀經(jīng)典書籍和挑戰(zhàn)更難的項目)
大家可以看出來我從來沒有去為了學(xué)習(xí)而看書,而都是我遇到了問題,遇到了瓶頸選擇去看書,去學(xué)習(xí)更高級的硬件軟件,也就是從實踐中學(xué)習(xí),所以我對說想學(xué)編程的初學(xué)者說一句,學(xué)任何一門語言一定要動手,一定要動手,一定要動手,重要的事情說三遍,如果你照做了,那=沒什么難的,因為我入門C語言也就是一周的時間,而且已經(jīng)可以根據(jù)硬件平臺做出一款產(chǎn)品,當時做的是音樂LED點陣頻譜,找了半天沒找到圖片。
然后就說下學(xué)習(xí)C語言有什么用,如果你立志想要進入互聯(lián)網(wǎng)公司,那我建議你可以C語言入門,之后學(xué)習(xí)一門面向?qū)ο蟮恼Z言,比如Java或者c++,因為這個是互聯(lián)網(wǎng)后端最常用的語言。備注下,等你學(xué)的就知道,后邊這兩種語言都是發(fā)源于C語言,學(xué)會C語言對于后者的學(xué)習(xí)大有裨益。
然后說下C語言的用處,可能很多小伙伴會疑惑C語言為什么一直能在編程排行榜前三(今年回到了第一),明明感覺沒有地方用。這肯定是有誤解的唄,C語言之所以一直前三,就是因為其應(yīng)用之廣泛無人能及,首先但凡與硬件相關(guān)的編程工作首選都是C語言,比如你家的各種電器幾乎都是C語言在起作用,在說你每天形影不離的手機,每天工作的電腦,他們的操作系統(tǒng)都是C語言寫的,包括iOS,安卓,Windows,Linux,Unix等等。。還有通信行業(yè)C語言也是首選的語言,這些幾乎已經(jīng)充斥了生活中的方方面面。這個可以看我的之前的文章:C語言到底能干什么?
最后說下收入,很多人估計都是被互聯(lián)網(wǎng)的高工資吸引了,也可能也是認為C語言學(xué)了沒用的原因,但是最后想說的是很多應(yīng)用C語言的崗位工資還是很可觀的,比如Linux開發(fā)工程師,高級運維工程師,嵌入式軟件工程師,通信算法工程師,這個又說到算法了,之后再說下C語言和算法的淵源,很多說C語言不賺錢的估計是說寫單片機工程師,那些技術(shù)含量很低,學(xué)習(xí)成本也很低的工作自然工資也低,但是這個不是C語言不值得學(xué)的原因,比如互聯(lián)網(wǎng)也不是全部高薪一樣。
未完待續(xù),持續(xù)更新!以防后邊找不到可以點贊收藏下!