由于C語言與硬件的結(jié)合非常緊密,同時C語言也有健全的語言生態(tài),所以未來的應用場景還是非常多的。最后,C語言雖然已經(jīng)有了幾十年的應用歷史,但是C語言憑借較高的執(zhí)行效率和簡介的語法結(jié)構(gòu),一直在操作系統(tǒng)研發(fā)、容器研發(fā)和各種嵌入式開發(fā)中占據(jù)著重要的位置,目前依然是最為流行的編程語言之一。
只會寫嵌入式程序的人滿大街都是。樹莓派、arduino等這些不用費腦子費體力做硬件的開發(fā)板出來后,連軟件工程師都可以轉(zhuǎn)過來做嵌入式程序了。但寫的了程序還真正能做硬件電路的人太少了,最多是參考開發(fā)板送的資料或者芯片Datasheet設計個最小系統(tǒng),能做外圍電路特別是模擬電路的太少了,幾十年前,父母那一輩的工程師還能自己焊接調(diào)試個電視機、收音機、電臺的出來,現(xiàn)在的人基本是用到什么都找集成芯片。
以至于我們要找嵌入式硬件工程師,都要求他做過開關(guān)電源、變頻器之類的,另外一些,能寫程序的人還能做數(shù)字信號處理算法的人(圖像處理、聲音處理、自控算法處理等)的人太少了。和計算機軟件比起來,因為嵌入式在硬件上投入比計算機軟件要大,項目開發(fā)周期較計算機軟件的長、資金回攏周期也較長,所以,做嵌入式/電子設備的企業(yè)要少的多。
企業(yè)缺人是缺少來了就能直接上手的人,也缺少學習能力強的人,嵌入式的芯片多種多樣,不像計算機硬件平臺基本就是X86,如果用到其他平臺如ARM和powerPC,對軟件工程師的工作影響不是太多,因為他們是面向?qū)ο缶幊蹋恍枰紤]硬件。做嵌入式多多少少是要考慮硬件平臺的,我招個人,我們用工業(yè)總線CAN,他說他以前只玩過串口和TCPIP,那又要花一兩個月來適應CAN協(xié)議我們用ti的ARM9,他說他以前只做過STM32,還要學習一下ARM9的寄存器。
然后因為思維有些固化,一直排斥ARM9,說這東西不如ST,沒有庫函數(shù)程序?qū)懫饋聿缓糜胋alabalala所以一直缺人,但卻一直在面試找不到個技術(shù)上跟我們要求盡量接近的,至于工資,其實是兩面分化的,如果跟上述一二段說的那些人,基本上工資是要低于他們做計算機軟件的同學們(同學歷、同工作年限、同畢業(yè)院校的人們之間對比)。
2、程序員有必要學習C語言嗎?
謝謝邀請!這是一個非常好的問題,作為一名IT行業(yè)的從業(yè)者,同時也是一名計算機專業(yè)的研究生導師,我來回答一下這個問題,首先,當前的C語言不但依然值得程序員學習,而且未來的C語言將會持續(xù)受到關(guān)注,主要的原因有以下幾點:第一:物聯(lián)網(wǎng)前景廣闊。在當前5G通信的推動下,物聯(lián)網(wǎng)領(lǐng)域的發(fā)展前景將非常值得期待,物聯(lián)網(wǎng)的發(fā)展與互聯(lián)網(wǎng)有很大的不同,在互聯(lián)網(wǎng)階段,做上層的資源整合就可以了,而在物聯(lián)網(wǎng)階段,要從底層的硬件研發(fā)開始,而這正需要研發(fā)人員具備C語言的應用能力,
第二:行業(yè)結(jié)構(gòu)體系進一步優(yōu)化。在產(chǎn)業(yè)結(jié)構(gòu)升級的推動下,廣大傳統(tǒng)行業(yè)需要完成網(wǎng)絡化和智能化改造,這就要求IT行業(yè)要全面進行結(jié)構(gòu)優(yōu)化,以適應產(chǎn)業(yè)結(jié)構(gòu)升級的要求,互聯(lián)網(wǎng)必然會從上層研發(fā)逐漸走到底層研發(fā),比如目前對于電子電路、芯片方面的研發(fā)受到了廣泛的關(guān)注,由于C語言與硬件的結(jié)合非常緊密,同時C語言也有健全的語言生態(tài),所以未來的應用場景還是非常多的。
第三:程序員結(jié)構(gòu)升級,在云計算技術(shù)的推動下,未來大量的后端開發(fā)程序員將完成崗位升級,從事研發(fā)級工作,而C語言是研發(fā)級程序員最常見的編程工具之一,所以未來C語言依然會有大量的用戶。最后,C語言雖然已經(jīng)有了幾十年的應用歷史,但是C語言憑借較高的執(zhí)行效率和簡介的語法結(jié)構(gòu),一直在操作系統(tǒng)研發(fā)、容器研發(fā)和各種嵌入式開發(fā)中占據(jù)著重要的位置,目前依然是最為流行的編程語言之一,
從目前的發(fā)展趨勢來看,C語言對于程序員未來的發(fā)展來說依然具有重要的意義。我從事互聯(lián)網(wǎng)行業(yè)多年,目前也在帶計算機專業(yè)的研究生,主要的研究方向集中在大數(shù)據(jù)和人工智能領(lǐng)域,我會陸續(xù)寫一些關(guān)于互聯(lián)網(wǎng)技術(shù)方面的文章,感興趣的朋友可以關(guān)注我,相信一定會有所收獲,如果有互聯(lián)網(wǎng)、大數(shù)據(jù)、人工智能等方面的問題,或者是考研方面的問題,都可以在評論區(qū)留言!。