c语言嵌入式与java嵌入式有哪些区别

2024-12-16 14:44:04
推荐回答(4个)
回答1:

我是个嵌入式程序员。

嵌入式开发分为驱动开发和应用开发。

驱动开发难度较高,除了精通嵌入式芯片工作原理(寄存器设定...),操作系统原理(存储空间分配...等)外,还需要了解基本的数字电路的知识(端子电位...等)。
这部分主要用C语言和汇编,这种开发薪金较高,不是随便上个培训班就能胜任的。

嵌入式应用开发,其实基本已经和普通软件开发没什么区别了,只是使用的工具不同,因为各种不同已经在驱动层和操作系统层屏蔽了,直接调用各种接口函数编写程序。是在嵌入式驱动开发的基础上做的进一步开发。
这部分用C\C++,Java,C#都有,Java多一些,因为Java语言对不同平台间的兼容性较好,不管什么系统,装个Java虚拟器就可以跑Java程序。

早些年嵌入式开发指的都是嵌入式驱动开发,现在很多培训班混淆视听,把应用开发也归类为嵌入式,会嵌入式应用开发的人一点都不缺乏。这也和市场需求有关,目前人才需求大部分都是嵌入式应用开发,国内很少有公司有财力和物力自己做驱动开发。

一个合格的嵌入式驱动开发程序员再怎么也月薪上万。
一个合格的嵌入式应用开发程序员最多四五千。

懂得应用开发的,根本不懂驱动开发,因为不懂硬件;懂得驱动开发的人轻松做应用开发,因为那些接口函数都是他们自己做的。

你真正要选择的不是C语言还是Java,而是驱动还是做应用。

做驱动绝对是有挑战的。高投入,高回报。

回答2:

嵌入式开发分为驱动开发和应用开发。

驱动开发难度较高,除了精通嵌入式芯片工作原理(寄存器设定...),操作系统原理(存储空间分配...等)外,还需要了解基本的数字电路的知识(端子电位...等)。
这部分主要用C语言和汇编,这种开发薪金较高,但是相对来说,学习的难度比较大。

嵌入式应用开发,其实基本已经和普通软件开发没什么区别了,只是使用的工具不同,开发环境不同,因为各种不同已经在驱动层和操作系统层屏蔽了,直接调用各种接口函数编写程序。是在嵌入式驱动开发的基础上做的进一步开发。
这部分用C\C++,Java,C#都有,Java多一些,因为Java语言对不同平台间的兼容性较好,不管什么系统,装个Java虚拟器就可以跑Java程序。

早些年嵌入式开发指的都是嵌入式驱动开发,目前的嵌入式开发主要是针对嵌入式应用开发,这也和市场需求有关,目前人才需求大部分都是嵌入式应用开发,国内很少有公司有财力和物力自己做驱动开发。

回答3:

就拿手机来说,C主要是做底层设备驱动或内核的,比如比较流行的WinCE,Linux, Android的内核都是C/C++写的。
Java主要是上层应用程序,像计算器、通信录之类的,优点是开发相对容易,但是运行相对较慢,所以像手机浏览器之类运算量大或比较重要的app很多用C++写的。
我较着,你要是本科生就学java,要是研究生就学C的嵌入式。当然如果个人有偏好,学什么都一样,只要努力。

回答4:

非常赞同楼上的。可是为什么不可以本科生和研究生都学C嵌入式?