码迷,mamicode.com
首页 > 编程语言 > 详细

你会用什么程序语言写固件?

时间:2016-04-06 14:58:38      阅读:240      评论:0      收藏:0      [点我收藏+]

标签:

几年前的4月,编译程序软件供应商Keil Software (现在已是ARM的一部分)在某嵌入式系统技术杂志上刊登了一则广告,宣传他们为8051架构开发的新COBOL语言编译程序;但内行人一看就知道那是个愚人节的玩笑。

8051架构/嵌入式系统用的COBOL语言真的是非常荒谬而好笑的点子,我还特地打电话给该公司的总裁,恭喜他想出这么幽默的笑话,而他告诉我真的有人想要订购那样的产品!这反映了我们目前仍然会看到的、为嵌入式系统开发案选择编程语言的某些心态,理想抱负似乎总胜过现实。

技术分享
8051架构专用的COBOL语言?不要怀疑,那真的是愚人节的玩笑!

 

你要是常去Slashdot或其他类似的嵌入式开发网站,都会看到关于编程语言的讨论;D语言是最新的热门编程语言吗?还是Swift?我一天到晚收到人们想要以C#语言编写固件之相关信息的电子邮件;而也常会听到有人说现在整个世界的潮流是Java,如果不跟上就落伍了。

 

整个世界?事实上在嵌入式领域,大致上只有使用两种语言:C与C++;根据Embedded.com (EE Time姊妹网站)曾做过的统计,读者们主要使用的语言如下图(X轴的单位是百分比):

 

 

技术分享
Embedded.com统计读者最常用的嵌入式编程语言

 

而显然令人惊讶的是,就连C++的市占率都没有赢过C。在选择编程语言时,必须要考虑到软件开发者的普遍性,不然如果你请不到精通某种特定语言的工程师,恐怕就得花费很长的时间以及高昂的训练成本,否则就会失败。

 

我 曾经被请去帮忙一个在瑞典的、面临失败的开发案,就是用C++语言写的;我想该语言是与该应用程序自然契合,但他们是为何会做这样的选择?那家公司的副总裁告诉我,他曾在《商业周刊(Business Week)》读到一篇文章,说C++可让任何东西立即可重复使用,所以他才决定使用该种语言。

 

那个开发案有40个工程师参与,但只有一个新来的毕业生,有过面向对象(object-oriented)的经验,另外39个人则试着从工作中学习。这会是一场灾难,他们需要实践、抛弃式的项目来取得经验,一个因为不会出货、所以就算犯错也没关系的项目。

 

C语言已经在这个领域存在30年,而且没有退出的迹象;现在有很多更好的选择,我希望能转移到Ada语言、甚至至更好的SPARK,但除非有更多经过训练的工程师,这恐怕不会发生。身为嵌入式设计工程师的你用的是哪一种语言?C与C++仍然健在吗?

图纸装订 http://www.biyinjishi.com/products/a60-b6050/
个性印品 http://www.biyinjishi.com/products/a65/
照片打印 http://www.biyinjishi.com/products/a65-b6510/
照片冲印 http://www.biyinjishi.com/products/a65-b6510/
冲印照片 http://www.biyinjishi.com/products/a65-b6510/d100117/
数码照片 http://www.biyinjishi.com/products/a65-b6510/d100118/
lomo卡 http://www.biyinjishi.com/products/a65-b6510/d100119/
明信片 http://www.biyinjishi.com/products/a65-b6510/d100120/
拼图海报 http://www.biyinjishi.com/products/a65-b6510/d100121/
照片墙 http://www.biyinjishi.com/products/a65-b6510/d100122/
挂历 http://www.biyinjishi.com/products/a65-b6520/d100122
台历 http://www.biyinjishi.com/products/a65-b6520/d100122
普通台历 http://www.biyinjishi.com/products/a65-b6520/d100124/
创意台历 http://www.biyinjishi.com/products/a65-b6520/d100125/
高端台历 http://www.biyinjishi.com/products/a65-b6520/d100126/
分月挂历 http://www.biyinjishi.com/products/a65-b6520/d100127/
单张年历 http://www.biyinjishi.com/products/a65-b6520/d100128/
相册 http://www.biyinjishi.com/products/a65-b6530/d100128
简装照片书 http://www.biyinjishi.com/products/a65-b6530/d100130/

你会用什么程序语言写固件?

标签:

原文地址:http://www.cnblogs.com/SA-Jim/p/5359110.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!