总体来说,嵌入式程序员是没有互联网程序员收入高的。在选择自己专业,或者以后要入行的行业时,收入无疑是一个重要的考虑点。所以,如果要从嵌入式和互联网里挑一个,大多数人还是愿意选互联网的。
今天浏览外文网站,我发现美国也有这方面的现象,已经有很多美国学者开始关心他们的嵌入式编程技术得不到足够传承和发展了。
根据报道,人们对工程教育质量的关注,越来越多地集中在特定领域,嵌入式系统C语言编程相关的大学计算机科学课程不足被作为一个典型讨论,因为嵌入式C语言编程技术的应用非常广泛,从医疗设备到商用飞机,嵌入式程序编程可以说是安全性和可靠性的基础。
有学者质疑大学开设的课程不合理。相当多的计算机系学院倾向于开设像 Java 这样流行的编程语言,而忽视了同样很重要的嵌入式C语言编程,不考虑诸如如何设计和分析算法及数据结构的教学。
纽约大学名誉教授,Adacore公司 CEO 罗伯特德瓦尔(Robert Dewar)最近发表了一篇文章,主要内容就是指出大学应该重新思考其计算机科学入门课程应该侧重的编程语言。
Dewar 在他的文章里说,“直截了当的说,为了迎合市场,采用 Java 取代以前的编程语言(如Pascal,Ada,C语言,C++等),是一种愚蠢也是一种目光短浅的教学方法。”
“许多大学纷纷开设 Java 课程,是因为“掌握了Java,就找到了工作”。但是讽刺的是,这样的课程的确可以培训处一批程序员,他们有着一些特殊但肤浅的技能,但是一旦遇到需要更广泛和更深技术的工作,他们就失业了。”
感觉 Dewar 言辞有些激烈。
美国还有一些嵌入式C语言程序员认为 Dewar 低估了大学计算机系只重视 Java 等流行编程语言的严重性。
技术专家 Michael Barr 赞成这种观点,不过他没有做出过多解释,而是成立一个嵌入式软件训练营,邀请计算机系的大学生参加开发嵌入式程序,这些程序的侧重点是操控一些硬件设备。
在一周的实际操作实验里,Barr 发现掌握了C语言和C++的同学更能完成任务,但是这样的同学很少。Barr 得出的结论是,“美国大学里没有嵌入式教学。”
Barr 在后来的一次采访中说:“我发现一个共同点,在这次的训练营里,除非同学懂得C语言,否则很难完成任务。”Barr 强调说,“我说的“懂得C语言”不是指“听说过”就可以完成嵌入式开发任务,他们至少必须得知道C语言的基本语法。”
Barr 补充道,“那些只懂得 Java 的拥有计算机科学或者工程学位的同学编写的程序,“根本没法真正的接触到硬件设备”,这就是只重视 Java 的后果。”
我认为,Java 当然是一门强大的编程语言。但是就嵌入式领域来说,Java 就显得力不从心了,在这里C语言的地位仍然不可撼动。
嵌入式程序员收入低,做的人少,很多人担心嵌入式领域被忽略,引发社会科技产品发展的“短板效应”。但是我觉得我还没有到达操心“领域”这个大概念的程度,我选择嵌入式领域,是因为我喜欢底层,我喜欢追根问底,当然了,这些都要建立在能养活自己的基础上。