微软发布 VS Code 容器化开发工具,大大简化物联网设备开发
近日(北京时间 2019 年 7 月 9 日),微软宣布了 Azure IoT Tools for VS Code 的全新功能:通过在容器中封装编译器、设备 SDK 以及基本库,大大简化了设备交叉编译的工作量,使得嵌入式 Linux 设备(比如 Debian, Ubuntu, Yocto Linux…)的开发者能够自由翱翔。
https://marketplace.visualstudio.com/items?itemName=vsciot-vscode.azure-iot-tools
为什么选择容器?
就像 VS Code 团队了解到 Python,Node.js 开发人员想要“沙箱式”的容器和虚拟机来进行开发。根据我们在物联网开发工具和 Azure IoT DevKit 方面的经验,我们了解到配置交叉编译工具链是设备开发的基石。当设备开发人员不仅需要处理设备逻辑,而且还需要将设备连接到云时,整个开发流程会变得很复杂。而容器化开发,却能大大简化开发流程。
对于团队协作,我们看到许多设备开发团队使用共享的虚拟机,以便整个团队可以在版本一致的环境中编译设备代码,这对于设备开发至关重要。
我们得到的另一个观察是 MPU(例如 ARM Cortex-A 系列)设备的工具链设置不如 MCU(例如 ARM Cortext-M 系列)设备成熟。因为对于 MCU 设备,通常有诸如 Keil,IAR 之类的IDE,它们提供了很好地集成了编译工具链。对于 MPU 设备,开发人员使用 VS Code,VIM 或 Notepad ++ 等编辑器进行代码编辑,并通过 CLI 在本地计算机或共享虚拟机上编译所有内容。
通过以上的探索,以及最近 的出现,使我们最终选择容器来简化设备开发人员的开发流程。
它是如何工作的?
我们提供了多种 archetype(例如 ARMv7,ARM64)的基本镜像,其中包含交叉编译工具链,Azure IoT 设备 C SDK 和其他基本库(例如 OpenSSL,zlib)。Azure IoT Tools 使用VS Code Remote 将您在本地计算机上创建的设备代码映射到容器中,并在其中进行编译。
怎么样?容器化开发工具是不是极大地简化了设备开发的流程?你不需要关心复杂的交叉编译以及依赖项,Azure IoT Tools 统统帮你搞定!
赶紧来下载最新的 Azure IoT Tools,并根据教程来体验吧!
https://github.com/microsoft/vscode-iot-workbench#usage