嵌入式中的各種語言,你get到了嗎
本周最后一場直播計(jì)劃???? :
直播時(shí)間:下午15:00到17:00,周五啦!?。?/span>
直播地址:B站主頁直播間:直播間地址,某音搜索“信盈達(dá)”賬號(hào)(有兩個(gè)號(hào),分享不一樣的知識(shí)直播);
明日復(fù)明日,明日何其多~~還是趕緊行動(dòng)起來吧?。。??

單片機(jī)的主流編譯語言仍然是以C語言為主,再加上少量匯編的結(jié)合體。而嵌入式Linux領(lǐng)域的更多使用的是多種語言混合應(yīng)用編程?;旌蠎?yīng)用編程內(nèi)核模塊使用的是C語言。
而界面的話使用JAVA和QT還有C++。應(yīng)用層邏輯使用C++、python,nobejs的混合編程,在單片機(jī)領(lǐng)域C++不能成為主要流行語言,既有歷史原因,也有工業(yè)的需求。單片機(jī)是從51開始發(fā)展直到現(xiàn)在主流的FLASH容量。仍然在64KB到256KB左右,容量大小的限制,注定了C++ 中的模塊泛型編程和STL等。這些方式幾乎運(yùn)用不到產(chǎn)品開發(fā)中,如果只能使用支持class的c++就沒有什么明顯的作用,因?yàn)樵贑語言是有結(jié)構(gòu)體加函數(shù)指針。
可以替代的情況下,C換成C++的意義就不是很大。而python和js的推廣相對(duì)困難。
原因也是大概相同的,此外再加上調(diào)試?yán)щy。不過對(duì)于Rust,這些困難都不存在的,但是沒用,是因?yàn)槟壳皹I(yè)內(nèi)無論大小公司,都有大量的產(chǎn)品。都是使用C語言開發(fā)的,如果要替換成Rust,需要承擔(dān)太多的額外成本問題,語言本身是沒有問題的。很多使用者認(rèn)為Rust的語言層面優(yōu)于C語言,所以還需要Rust熱愛者們,可以多去為各主流廠商平臺(tái)提供開源項(xiàng)目。而不是呼吁語法層面多優(yōu)秀,另外單片機(jī)又是不僅僅是實(shí)時(shí)可控的。更重要的是價(jià)格便宜,對(duì)于出貨量幾十萬甚至上百萬的設(shè)備。任何一點(diǎn)細(xì)微的節(jié)約都會(huì)變成一筆可觀的收入。
從這個(gè)角度來說C是C++、js、python有明顯優(yōu)勢的。
在嵌入式linux領(lǐng)域,C++絕對(duì)是應(yīng)用層主力之一,QT加上C++,雖然目前因?yàn)樾酒阅艿奶嵘?,逐漸本Android加上JAVA 替代。蛋仍然在醫(yī)療工控車載,導(dǎo)航等領(lǐng)域有自己的一席之地。這些領(lǐng)域目前C++ 應(yīng)用的是最多的地方。說嵌入式比較難。而C++也十分困難。
所以嵌入式人員學(xué)習(xí)C++比較少。
無論是python js還是C++還是Java面向編程,只要有需求,總會(huì)有人會(huì)踏入這個(gè)方向,難度不是問題。需求和薪水才是問題。
今天先分享到這,想要進(jìn)qun學(xué)習(xí)嵌入式開發(fā)的小伙伴可評(píng)論區(qū)留言。
