亿迅智能制造网
工业4.0先进制造技术信息网站!
首页 | 制造技术 | 制造设备 | 工业物联网 | 工业材料 | 设备保养维修 | 工业编程 |
home  MfgRobots >> 亿迅智能制造网 >  >> Industrial Internet of Things >> 嵌入式

从 C 过渡到 C++ 的 3 个理由

几十年来,嵌入式软件工程师一直在争论他们应该使用 C 还是 C++。大多数情况下,微控制器制造商提供的软件是用 C 语言提供的,事实上,根据 2019 年嵌入式市场调查,56% 的嵌入式软件是用 C 语言编写的。然而,C++ 逐渐流行起来,大约 23% 的新嵌入式软件项目是用 C++ 编写的。随着 C 接近第 50 个 周年纪念日,可能是时候开始从 C 过渡到 C++。以下是开发者应考虑进行更改的三个原因。

原因 1:改进架构实施

C 编程语言确实通过函数指针为开发人员提供了封装和一些基本的多态能力。但是,C 确实是一种过程语言,它不提供诸如继承或组合之类的机制而无需付出额外的努力。这会使系统的整体架构设计不太理想,进而影响软件的重用和维护方式,甚至限制其灵活性。

C++ 为开发人员提供了实现真正面向对象的设计模式、开发真正的抽象和实现设计模式的能力,这些设计模式不仅可以从一个应用程序重用到另一个应用程序,而且还提高了体系结构的灵活性。这允许重复使用软件,进而可以带来更快的产品开发、更短的客户端应用程序定制时间以及许多其他优势。

原因#2:C++ 是一种不断发展的现代语言

在当今复杂和创新的开发环境中,开发人员不仅需要尖端的硬件解决方案,还需要尖端的软件和语言解决方案。这意味着用于编写软件的语言需要是最新的,以便为开发人员提供实现其系统所需的最新工具。 C 语言的最后一次更新是在 2018 年,这听起来像是最近更新的。但是,如果您查看标准,就会发现没有添加新功能,唯一的更改是修复了 2011 年之前版本中的问题!是的,修订标准花了七年时间才解决了上一个问题!

再看C++,标准委员会承诺每三年更新一次标准!下一次修订预计在 2020 年,最后一个版本将于 2017 年发布。 与 C 不同,新修订不仅仅是错误修复,而是为语言添加了新的特性和功能,以便它可以是最新的并提供与其他语言(如 Python)竞争所需的工具。新标准甚至删除了不推荐使用的功能,例如三合字母。

原因 #3:C++ 是一种更丰富的语言

直到大约 3-4 年前,我为微控制器编写的大多数嵌入式软件都使用 C 编程语言。 C++ 一直提供比 C 更丰富的功能集,但似乎在那个时候编译器已经达到了编译代码等效或更好的地步。那是我开始深入研究 C++ 并发现这门语言变得多么丰富以及我还有多少要学习的语言的时候。

C++ 允许开发人员利用以下功能:

这些只是几个例子,还有更多!所有这些工具使嵌入式系统的编程生活变得更加容易。

结论

C++ 是一种现代且不断发展的语言,其中 C 似乎是静态的并且发展得更慢。事实上,在编程语言快速发展的时代,C 正在成为众所周知的恐龙。随着开发人员在他们的系统中面临日益增加的复杂性,他们需要一种语言,使他们能够灵活并最大限度地重用。许多来自“旧时代”的抱怨不再适用于 C++,尤其是考虑到 C++ 编译器变得如此高效。如果有时间开始过渡到 C++,那很可能就是它了。

在接下来的几篇文章中,我们将更深入地研究 C++ 以及开发人员如何利用它来设计和构建微控制器驱动程序。


嵌入式

  1. C++ 运算符
  2. C++ 注释
  3. C++ 类模板
  4. 从 AOBRD 过渡到 ELD 合规性的五个技巧
  5. C++ 概述
  6. C++ 常量/文字
  7. C++ 中的运算符
  8. C++ 中的数字
  9. C++ 参考资料
  10. C++ 模板
  11. C++ 预处理器
  12. 工业制动器应来自 Svenborg 制动器的 5 个理由