30

当人们想到艾达时,人们通常会想到航空电子设备。

我感兴趣的是 Ada 的其他一些应用?它在哪里使用?是否有任何用 Ada 编写的已交付应用程序?

例如,其中是否编写了 CRUD 应用程序?还是游戏?等等。

4

8 回答 8

33

Michael Feldman 积极维护“谁在使用 Ada/Real-World Projects ”列表,其中列出了所有类型的军事和商业项目。而且因为他对贡献者保密,项目将在那里出现,否则他们的公司赞助商不会将其作为“Ada Inside”项目进行讨论。

于 2008-12-14T15:51:29.003 回答
18

除了安全关键系统之外,只有当您有许多团队在一个非常大的项目上工作并且逻辑源代码行数超过大约 1 或 200 万行时,Ada 才会真正发挥作用。

正是在那个时候,你有时认为有点迂腐并增加了太多代码大小的所有 Ada 语言定义的运行时检查变得非常有用。修复数百万行代码中的某个错误从来都不是一件有趣的事;运行时检查确实有助于更早、更接近地发现问题。

不幸的是,许多专业使用过 Ada 83 或 Ada 95 的软件开发人员无法告诉您他们从事的项目。我听说它也用于空中交通管制系统(在各个国家)、铁路运输系统(如巴黎地铁和香港地铁)和银行/金融(路透社等)领域。

它是一种非常好的语言,有人提倡使用它,因为它是一种很好的语言,但有时,当你几个月或几年没有看到分段错误或真正令人讨厌的崩溃时,你开始想用 C++ 编写代码再次...

于 2008-12-14T10:59:16.817 回答
12

它最初是 DoD 的首选语言,因此您会在 DoD 程序中找到它。NASA 和 FAA 也是大用户。由于这个基础,许多商业航空航天也使用它(尽管这可能是“安全关键”)。例如,我认为波音 777 中的大部分软件都是在 Ada 开发的。我认为欧洲航天局也经常使用它。

也就是说,它真的没有被使用得足够多。例如,它自然几乎不受缓冲区溢出漏洞的影响,因此它确实应该是操作系统开发的首选语言。

于 2009-01-09T17:45:10.437 回答
8

Ada 最初被设想为一种语言,用于整合用于为美国军方构建系统的大量语言。因此,您会发现它在防御系统领域的应用程序中被大量使用。有关此类应用程序的示例,请查看Tokeneer案例研究,其源代码现已在线提供

于 2008-12-14T06:38:41.180 回答
5

不在数量上。在GNAT出现之前,Ada 编译器和开发工具非常昂贵,通常只支持昂贵的硬件,如 Suns、Vaxen 或 IBM 大型机。

周围有一些 - 各种服装都使用SPARK做对安全至关重要的事情,但它倾向于(尽管不是唯一的)定制工作。

于 2008-12-14T09:42:10.917 回答
5

我不确定,但是,在阅读了很多关于 Ada 的内容后,我认为它非常适合所有与物理相关的计算/自动化任务,因为所有这些编译时和运行时检查(一个很好的事情是您可以制作两种不兼容的浮点类型,例如长度和质量)。

于 2008-12-14T12:14:05.183 回答
2

Ada 在庞大的、遗留的、以政府为目标的项目中仍然很受欢迎。它也是VHDL的基础。

于 2009-01-21T20:50:19.330 回答
1

Ada 可以在游戏中使用。看一下这个:

https://sourceforge.net/projects/adagate/

这是将现代 OpenGL 与 Ada 结合使用的新示例(2015 年)。

于 2015-11-02T21:42:48.150 回答