先说说软件吧,软件到底是什么?软件就是程序加文档的集合体。
嵌入式运用领域比较广,纯软相对就会比较窄,比较专。
软件逻辑复杂程度也相当高,做的人也多。市场岗位比较饱和,嵌入式做的人不算多,社会岗位需求量大,工作以C语言为主。当然嵌入式软件工程师也是软件工程师的一种,不做嵌入式的工程师很多也会了解一些嵌入式开发,这些技术基本都是相通的。
嵌入式软件开发只是一个方向,这个概念很广,很多做上位机的也叫嵌入式,很多在板子上做Linux程序的也叫嵌入式,写驱动自己画板子也叫嵌入式。
嵌入式软件与嵌入式系统是密不可分的。
没有好坏,两个都重要。就如同大脑和神经。
如果数学基础比较好,建议做软件工程师,面宽。
因为如果想在纯软件开发的道路上走得更远,就需要有扎实的数学基础,因为软件开发说到底就是数学问题。
软件工程应用也非常广泛,软件逻辑复杂程度也相当高。高阶的段位没有3-5年很难达到!
嵌入式软件开发是软件开发工程里面的一个细分方向,再细分还要有嵌入式底层开发和嵌入式应用程序开发。
嵌入式软件开发本质上也是软件,只是比较贴近硬件的软件,应对的是物理环境。
他们之间有几个差别:
1) 嵌入式:门槛高一些,成才慢一些,社会需求量大,迭代慢一些,属于比较稳健发展,30年不会被淘汰,而且现在是万物互联的时代
2) 纯软件的话:门槛低一些,入门快,市场饱和,不过技术更新换代非常快,不保持学习新技术的话马上落伍,新人不断涌进来竞争压力大一些。35岁要做好一个转行的心理准备,不过做好了还是很牛。