嵌入式到底应该选择驱动开发,还是应用开发?

简介: 很多初入职场的小伙伴都会纠结于是选择驱动开发,还是应用开发。今天我们就来聊聊,希望能给初入职场的你带来一点点的帮助。这里所说的主要是带操作系统(Linux或Android)的开发,因为像单片机,我们比较少区分驱动开发和应用开发。

前言

很多初入职场的小伙伴都会纠结于是选择驱动开发,还是应用开发。今天我们就来聊聊,希望能给初入职场的你带来一点点的帮助。这里所说的主要是带操作系统(Linux或Android)的开发,因为像单片机,我们比较少区分驱动开发和应用开发。

如何选择

接下来我们将从工作内容,薪资,发展等方面进行对比探讨!

  • 工作内容
    驱动开发主要是跟硬件打交道,然后留出接口给应用程序调用。它就是一个中间桥梁。驱动开发需要有一些硬件的基础知识,这也是为什么大家认为驱动开发的门槛会相对高一点的原因。驱动开发主要的工作内容: 看原理图,编写驱动程序,调试等。驱动程序的编写一般要按系统的框架进行编写,所以还要去了解系统的驱动框架。写驱动的基本也要会一些简单的应用开发,因为可能要调试驱动。

    应用开发主要是调用驱动接口和系统接口,然后实现功能逻辑。应用开发就是去实现产品所需的功能。应用开发主要的工作内容: 实现业务逻辑,集成一些第三方库等。

对比:
驱动开发要求开发者要有一定的硬件基础,要了解系统驱动框架。一般学电子或通信专业的小伙伴会更适合。应用开发对于学电子或计算机的都挺合适的,门槛相对要求没那么高,但是应用开发遇到的bug会比较多,需求变更会比较频繁,而驱动是bug不多,但是查起来很要命。

  • 薪资

    薪资这块可能是很多人关心的,从目前市场上的价格来看,其实驱动开发和应用开发的薪资是差不多的。可能很多人会觉得驱动难,所以驱动应该薪资会比较高一点,但其实决定薪资高低的并不是技术的难度,而是供需关系,简单说就是人才的稀缺度。假如市场有100个岗位,但是只有60个人才,这时候为了得到人才,公司才会提高薪资。

  • 发展

    这里的发展指的就是跳槽,驱动开发跳槽对于行业的限制比较小,只要是生产硬件设备的厂家都可以。而应用开发跳槽更看重行业,比如之前是做路由器,跳槽到做平板电脑的,可能之前的一些行业知识就没用了,但是开发经验还是有用的,只是需要重新了解一个行业。应用开发还有一个优势,就是可以转到互联网行业,并不一定要做制造业,而驱动开发基本只能选择制造业。

总结

我们并不想给大家一个结论,选择一个职业,主要还是跟个人兴趣和职业技能比较相关。做自己喜欢的很重要,我们需要在工作和生活中找到一个平衡点!

相关文章
|
移动开发 JavaScript 前端开发
分享76个鼠标特效,总有一款适合您
分享76个鼠标特效,总有一款适合您
464 7
|
11月前
|
Linux 开发工具 git
【Git】Git 完全指南:从入门到精通
Git 是一种强大的版本控制工具,掌握了其基本命令和高级特性后,可以大大提高开发效率并方便团队协作。通过本篇文章,你已经学会了 Git 的核心命令及其使用方法,希望你能够灵活运用 Git 在实际项目中进行版本管理。
3274 4
|
算法 C++ 计算机视觉
OpenCV-图像像素遍历操作的三种方法对比(程序提速)
OpenCV-图像像素遍历操作的三种方法对比(程序提速)
405 0
|
运维 JavaScript Java
快速部署阿里云WebIDE(DevStudio)并参与开源项目开发
3个步骤,在轻量应用服务器上完成部署DevStudio,帮你快速学习使用DevStudio进行代码的开发。
快速部署阿里云WebIDE(DevStudio)并参与开源项目开发
|
4月前
|
监控 安全 数据安全/隐私保护
教你如何修复硬盘坏道,一文看懂实用方法
电脑变卡、文件打不开、系统崩溃?可能是硬盘坏道所致!本文教你如何判断硬盘是否存在坏道,并提供多种修复方法,包括DiskGenius、CHKDSK及厂商工具等,助你轻松应对逻辑坏道与物理坏道问题。修复前请备份数据、保持供电稳定,若坏道频发,建议及时更换硬盘。了解硬盘保养技巧,延长使用寿命,保障数据安全。
|
安全 Android开发 iOS开发
Android vs iOS:移动操作系统的技术比较与未来发展
本文深入探讨了Android和iOS这两大主流移动操作系统的技术特点和差异,从架构设计、安全性、开发环境、用户体验等多个方面进行详细分析。通过对比两者在市场份额、生态系统建设以及未来发展方向上的表现,本文将为读者提供一个全面的视角,以便更好地理解这两种操作系统的当前地位和未来潜力。
|
存储 自然语言处理 开发工具
milvus向量库的工具类(添加分区、删除分区、删除记录)等
【5月更文挑战第18天】milvus向量库的工具类(添加分区、删除分区、删除记录)等
354 3
|
传感器 存储 Ubuntu
Azure Kinect DK + ROS1 Noetic使用教程
本文是Azure Kinect DK在Ubuntu20.04下配合ROS1 Noetic使用的教程,内容包括一键安装脚本、硬件介绍、安装SDK相关软件包、设置Udev规则、SDK基本测试、DK ROS基本测试,以及存在的一些重要缺陷和相关参考文献。教程详细指导了如何配置和使用Azure Kinect DK,提供了安装步骤和解决常见问题的方法。
1017 1
Azure Kinect DK + ROS1 Noetic使用教程
|
数据处理 Python
Python读取大文件的“坑“与内存占用检测
Python读取大文件的“坑“与内存占用检测
316 0
|
Ubuntu Linux
ubuntu源码编译指定版本make
以上内容涵盖了在Ubuntu中编译安装指定版本软件的全过程,这是一个技术性很强的操作,不仅可以带来定制化的安装体验,同时也能增加对系统管理和软件构建流程的理解。遵循以上步骤,任何有一定基础的用户都能够按需编译和安装软件。
294 8