物联网定制开发应该选择什么语言

访问次数: 970 次   
发布时间: 2022-05-24

首先要看你的需求,如果是跨硬件平台,那么Python、Golang相对不错。如果是边缘设备也是这两个。

大厦不能建立在沙地上,房子也不能盖好了之后总是拆了修理地基。因此选择什么类型的技术栈和基础产品很重要。这个是为了规避未来的风险。


开发语言上有很多选择:Java,Python,Go语言

指标

Java

Golang

备注

人好招吗

容易

较少

Java太多了,转Golang的人比较多。

学习门槛

Java的体系比较庞大,学习周期长

内存占用

很低

EdgeX从Java改Golang之后内存占用少了80%

启动时间

很慢

很快

EdgeX改Golang后微服务启动时间从30秒变成0.5秒

边缘设备支持

折腾多

折腾少

物联网边缘设备需求越来越强。

性能

更高

最新的测试是高一丢丢。

并发

Golang天生高并发

省钱?

需要更多的硬件

省钱

Golang硬件利用率高,更节省设备费

易部署?

Golang编译一个可执行文件就可以跑起来

框架体系

发达

一般

Java人多势众,框架多

发展趋势

逐步衰落

逐步上升

TIOBE编程语言排行榜。

易维护

代码难度大

代码易读

面向过程性的代码比面向对象抽象代码易读。

常见物联网开发所使用的语言(代表过去的选择)

产品名

开发语言

ThingsBoard

java11,angular9/vue

NodeRed

JS

netdata

C

grafana

Typescript

mainflux

go

kaa

java,go

EClipse IoT(Kura)

java

home-assistant.io/

python

SiteWhere

java,MongoDB

ThingWorx

java

DeviceHive(no update)

PostgreSQL,java

Zetta(no update)

nodejs

openremote

java

亚马逊云

-

Blynk

C++

particle-iot

JS,C,Java

thinger

java

jetlinks

java,Reactor(VUE)

Cayenne

java

airiot

go、react

EMQX

erlang

EdgeX Froundry

golang

zettajs.org

Node.js

Jetlinks

Java

ThingsPanel

Golang vue


Java最成熟,人也好找,不过长江后浪推前浪,Java的未来不是那么看好。


       1670979581924859.png


       image-4.png

从根本上来说,你能驾驭的住,能实现目的就是好语言。


从我们的角度来说,我们推荐go语言(golang),最早我们的系统是PHP做的,发现了很多性能各方面的问题,后来重做改成了golang,切换技术栈的原因是,整体投入产出比目前看Golang是最高的。



返回

Top