0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Ada Watch:选择支持可靠性的编程语言

星星科技指导员 来源:嵌入式计算设计 作者:GREG GICCA 2022-11-01 09:28 次阅读

选择编程语言是一个复杂的决定,因为它会极大地影响软件系统的预期可靠性 - 特别是在军事应用中。几乎任何语言都可用于开发任何应用程序,但是当从一个领域移动到另一个领域时,语言的原始设计优势可能不会延续。Ada语言由于其强大的类型和其他固有的安全特性,可以帮助开发人员生成非常可靠的程序,这使得程序更容易理解和修改,而不会产生副作用。

今天的编程语言领域非常丰富,但对于关键的嵌入式应用程序,少数应用程序往往比其他应用程序更频繁地使用。部分列表可能包括 Ada、Assembly、C、C++Java(按字母顺序排列)。这些语言(粗略地和不详尽地)分别被定义为支持:可靠和可维护的系统,硬件和设备的直接操作,操作系统和类似软件工具的构建,将当时新的面向对象编程(OOP)范式添加到基础C语言中,并支持高度可移植的应用程序。每个都擅长开发其域中的应用程序或与该域中的应用程序共享特征。

Ada 语言由于其强大的类型和其他固有的安全特性,可以帮助生成非常可靠的程序。这些相同的特征使程序更容易理解和修改,而不会产生副作用,因此它们更易于维护。如果需要算法来直接操作计算机的指令或数据,则汇编语言是无法击败的。C 是一种相对简单的语言,其中源指令通常映射到一组或一组常见的计算机指令或数据操作。术语“有思想的人的组装者”被用来描述C来传达这个概念。然而,它比汇编具有优势,因为它允许使用更高级的概念操作计算机,从而允许编写更高级的应用程序。C++使用 C 作为其基础,最值得注意的是在此基础上添加了 OOP 支持。OOP允许将问题分解为更小的可管理问题,然后为正在解决的更高级别的问题创建解决方案,以促进低级和高级组件的共享。在这种一般意义上,OOP可以在软件重用方面表现出色。Java语言旨在促进可移植性作为其主要目标。它是一种纯粹的OOP语言,鼓励继承和重用现有组件,具有比C或C++更强类型的数据模型,但努力防止C/C++直接访问/操作。

因此,汇编是直接操作计算机硬件的好语言。Ada 非常适合开发大型、长寿命系统或可靠性很重要的系统。C 适用于开发只需要应用程序和计算机之间相当低的抽象级别的应用程序。也就是说,软件开发人员执行将域解决方案转换为使其在计算机上执行的指令的任务。C++添加了 OOP 概念以及模板、命名空间管理和其他有助于软件重用和构建大规模应用程序的功能。Java是可移植性是关键设计目标的理想选择。作为一种现代编程语言,它还具有比 C 或 C++ 更强大的类型化和程序打包概念,因此软件开发人员不必直接将解决方案转换为操纵计算机的东西(事实上,在许多情况下他们不能使用 Java)。

上述每种语言在它所针对的应用程序域中使用时都会表现出色。每个域可能都不适合其他域。Ada 语言在编写非常小的程序或生存期有限的程序的语法上可能有点冗长。在这些情况下,可读性和可维护性不太重要。C 语言直接映射到硬件解决方案的能力并不是一个优势,因为软件开发人员必须编写大中型程序,在这些程序中,从问题解决方案到计算机指令的这种心理转换很难管理;程序员会犯错误。由于该语言假设开发人员的意思是他们所说的(类型),因此它将算法中的许多错误解释为仅仅是他们的意图,并且错误将与软件集成而不会被发现。

使用C相当简单的语言语法,开发人员可以快速编写大量源文本。这有时会给人一种错误的印象,即正在编写大量正确的软件。情况往往并非如此,C 和 Ada 之间的生产力比较实际上可能表明 Ada 开发人员在编写正确的源代码方面更有效率。C++语言为其C基础增加了好处,但继承了许多与C语言相同的缺点.Java提供了可移植性,但通常是实时性能特征之间的权衡,使此类程序难以编写,因此编写效率较低。

审核编辑:郭婷

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 嵌入式
    +关注

    关注

    5062

    文章

    18990

    浏览量

    302433
  • JAVA
    +关注

    关注

    19

    文章

    2953

    浏览量

    104504
收藏 人收藏

    评论

    相关推荐

    如何选择适合自己的编程语言

    在当今这个技术日新月异的时代,编程语言选择对于软件开发者来说至关重要。不同的编程语言有着不同的优势和适用场景,因此,
    的头像 发表于 11-15 09:37 71次阅读

    Orin芯片的编程语言支持

    Orin是一款高度集成、高性能的车载计算平台,由英伟达推出,并采用了英伟达自家的Volta架构GPU和其他高级处理器技术。关于Orin芯片的编程语言支持,可以从以下几个方面进行介绍: 一、主要
    的头像 发表于 10-27 16:45 164次阅读

    PCB高可靠性化要求与发展——PCB高可靠性的影响因素(上)

    在电子工业的快速发展中,印刷电路板(PCB)的可靠性始终是设计和制造的核心考量。随着集成电路(IC)的集成度不断提升,PCB不仅需要实现更高的组装密度,还要应对高频信号传输的挑战。这些趋势对PCB
    的头像 发表于 10-11 11:20 239次阅读
    PCB高<b class='flag-5'>可靠性</b>化要求与发展——PCB高<b class='flag-5'>可靠性</b>的影响因素(上)

    如何提高RS485通信的可靠性

    通信可靠性下降。为了确保系统的稳定运行,提高RS485通信的可靠性至关重要。合理的布线与接地布线是影响RS485通信可靠性的重要因素之一。首先,应选择合适的线缆。R
    的头像 发表于 09-20 08:07 246次阅读
    如何提高RS485通信的<b class='flag-5'>可靠性</b>?

    汽车功能安全与可靠性的关系

    当前,随着汽车领域的飞速发展,汽车也被重新定义。在汽车电子电气系统设计时,离不开对功能安全和可靠性设计的考虑。正确理解两者之间的关系,有助于更好地分析问题和解决问题。什么是汽车可靠性汽车可靠性是指
    的头像 发表于 07-13 08:28 3153次阅读
    汽车功能安全与<b class='flag-5'>可靠性</b>的关系

    AC/DC电源模块的可靠性设计与测试方法

    和安全,因此可靠性设计和测试是非常重要的。下面将详细介绍AC/DC电源模块的可靠性设计和测试方法。 AC/DC电源模块的可靠性设计与测试方法 一、
    的头像 发表于 05-14 13:53 652次阅读
    AC/DC电源模块的<b class='flag-5'>可靠性</b>设计与测试方法

    如何确保IGBT的产品可靠性

    在当今的半导体市场,公司成功的两个重要因素是产品质量和可靠性。而这两者是相互关联的,可靠性体现为在产品预期寿命内的长期质量表现。任何制造商要想维续经营,必须确保产品达到或超过基本的质量标准和可靠性
    的头像 发表于 01-25 10:21 1542次阅读
    如何确保IGBT的产品<b class='flag-5'>可靠性</b>

    IGBT的可靠性测试方案

    在当今的半导体市场,公司成功的两个重要因素是产品质量和可靠性。而这两者是相互关联的,可靠性体现为在产品预期寿命内的长期质量表现。任何制造商要想维续经营,必须确保产品达到或超过基本的质量标准和可靠性
    的头像 发表于 01-17 09:56 1307次阅读
    IGBT的<b class='flag-5'>可靠性</b>测试方案

    什么是汽车整车可靠性测试?

    当今竞争激烈的汽车市场中,汽车的品质和可靠性已成为消费者选择的重要标准。通过整车可靠性测试,汽车制造商可以确保他们的产品在各种极端条件下都能表现出色,从而赢得消费者的信任和满意度。   此外,整车
    的头像 发表于 12-22 17:16 898次阅读
    什么是汽车整车<b class='flag-5'>可靠性</b>测试?

    SD NAND 可靠性验证测试

    SDNAND可靠性验证测试的重要SDNAND可靠性验证测试至关重要。通过检验数据完整、设备寿命、性能稳定性,确保产品符合标准,可提高产品的可信度、提高品牌声誉,减少维修成本,确保
    的头像 发表于 12-14 14:29 642次阅读
    SD NAND <b class='flag-5'>可靠性</b>验证测试

    环境试验与可靠性试验的区别

    环境试验与可靠性试验的区别
    的头像 发表于 12-08 09:31 896次阅读
    环境试验与<b class='flag-5'>可靠性</b>试验的区别

    器件可靠性与温度的关系

    器件可靠性与温度的关系
    的头像 发表于 12-04 16:34 690次阅读
    器件<b class='flag-5'>可靠性</b>与温度的关系

    如何判断标准PoE供电交换机的可靠性

    如何判断标准PoE供电交换机的可靠性? 随着物联网和智能家居的快速发展,越来越多的设备需要使用到以太网供电(Power over Ethernet,PoE)交换机。在选择合适的PoE交换机时,评估其
    的头像 发表于 11-28 14:18 692次阅读

    提高PCB设备可靠性的技术措施

    提高PCB设备可靠性的技术措施:方案选择、电路设计、电路板设计、结构设计、元器件选用、制作工艺等多方面着手,具体措施如下: (1)简化方案设计。 方案设计时,在确保设备满足技术、性能指标的前提下
    发表于 11-22 06:29

    可靠性PCB的十一大重要特征

    一站式PCBA智造厂家今天为大家讲讲可靠性高的PCB都有哪些特征?可靠性高的PCB的重要特征。PCB作为电子产品的核心基板,其质量和可靠性直接影响了电子产品的质量和可靠性,为此高
    的头像 发表于 11-20 10:14 491次阅读