專家說,在為嵌入式系統(tǒng)選擇編程語言時,嵌入式開發(fā)人員必須了解每種語言的優(yōu)缺點。了解系統(tǒng)的限制和目標同樣重要。
對于許多嵌入式系統(tǒng),C或C++將是最佳選擇。在某種程度上,這是因為它們是“編譯”語言,非常高效。在編譯語言中,機器(或嵌入式設備)直接翻譯代碼,這意味著語言是快速和穩(wěn)定的。
具有最小內(nèi)存或功率的設備通常需要這種效率。所以,程序員經(jīng)常在那些設備中使用C或C++。C或C++經(jīng)常用于微控制器和使用真實操作系統(tǒng)的嵌入式設備中。這些系統(tǒng)也需要C和C++提供的速度和效率。你還可以在其他幾個嵌入式系統(tǒng)中找到C和C++。一些專家估計大約80%的嵌入式系統(tǒng)使用C編程語言。
但是你的嵌入式系統(tǒng)也可以和“解釋型”編程語言一樣好,甚至更好。對于解釋語言,嵌入式設備不直接翻譯代碼。相反,在設備頂部運行的另一個解釋程序執(zhí)行代碼。對于一些嵌入式系統(tǒng),解釋語言的優(yōu)勢將是至關重要的。與編譯語言不同,解釋語言很容易從一個操作系統(tǒng)移植到另一個操作系統(tǒng)。對于嵌入式開發(fā)人員來說,它們也更容易學習、閱讀和編寫。
Python和JavaScript是解釋編程語言的例子。由于解釋語言需要額外的處理,它們通常比編譯語言運行得更慢——盡管它們的速度正在提高。如果你的嵌入式設備使用機器學習,Python和MicroPython有顯著的優(yōu)勢。
每種嵌入式編程語言都有其優(yōu)點和缺點。有些語言在圖形用戶界面上比其他語言表現(xiàn)得更好。就像你花時間研究你想要使用的語言一樣,當嵌入式開發(fā)人員選擇語言時,也要考慮GUI。例如,如果你的系統(tǒng)使用GUI,你可能會希望使用JavaScript這樣的解釋型語言。