Eclipse 基金會最近完成了由 713 位開發者回答的 IoT 開發者調查,他們被問到了有關 IoT 編程語言、云平臺、IoT 操作系統、消息協議(MQTT, HTTP)、IoT 硬件架構等問題。調查結果已經公布,所以我們來看看一些幻燈片,特別是關于編程語言和操作系統。要注意的是,IoT 是適用于傳感器,網關和云的通用術語,因此這個調查會根據物聯網生態系統的不同部分,合適地劃分語言。
C 和 C++ 仍然是 Constrained Device 的首選語言,而且開發人員通常會使用多種語言,因為總數已超過 100%。
IoT 網關是對性能和資源(內存/存儲)要求更高的硬件,因此像 Java 和 Python 這樣的高級語言加入 C 和 C++ 并不感到驚訝,其中 Java 是其中最受歡迎的語言,因為有 40.8% 的受訪者選擇了 Java。
當提到關于幾乎無限資源的云時,并且在大多數情況下,不需要與硬件進行交互,所以像 Java,JavaScript,Node.js 和 Python 這種更高級的語言將會占多數。
當談到 constrained IoT devices 的操作系統時,Linux 以 44.1% 的比例領先 bare metal (27.6%) 和 FreeRTOS (15.0 %)。Windows 在其中位于第四名,應該是 Windows IoT core, Windows Embedded, 和 WinCE 的混合。
Linux 是 IoT 網關中采用比例最高的操作系統,有 66.9% 的受訪者使用它,這遠超排在第二位占比 20.5% 的 Windows 操作系統。這次調查沒有關于云的數據,可能是因為用戶沒有單獨運行自己的云服務器,而是依賴于提供商。不過他們特意問到了用于物聯網項目的 Linux 發行版,結果有點出乎意料,Raspbian 以 45.5% 的比例遙遙領先,Ubuntu Core 緊隨其后,使用比例達到了 44.4%。
也許 Raspbian 在原型設計階段或評估過程中被使用,因為大多數開發者(84%)都在使用像 Arduino, BeagleBone 或 Raspberry Pi 這樣廉價的開發版。20% 的開發者還表示在物聯網解決方案中部署了這種板。
這是調查結果的幾張幻燈片,可在下面的幻燈片中找到有關 Intel/ARM 硬件共享,消息和工業協議,云解決方案,無線連接等更多詳細信息。