哪种编程语言才是最该熟练掌握的,不会是Java吧?

C# / .NET

C#是Microsoft提供的专有编程语言。我这里包括C#/ .NET,主要是因为使用它作为主要语言的Microsoft Robotics Developer Studio。如果你要使用这个系统,你可能要使用C#。但是,首先学习C / C ++可能是长期发展编码技巧的好选择。

Java

作为电子工程师,我总是感到惊讶的是,一些计算机科学学位将Java教学作为他们的第一种编程语言。Java从程序员“隐藏”底层的内存功能,这使得它比C更容易编程,但这也意味着你对代码的实际操作了解甚少。如果您从计算机科学的背景(许多人,特别是在研究中)来到机器人,你可能已经学会了Java。像C#和MATLAB一样,Java是一种解释语言,这意味着它不会被编译成机器代码。相反,Java虚拟机在运行时解释指令。使用Java的理论是,由于Java虚拟机,您可以在许多不同的机器上使用相同的代码。在实践中,这并不总是奏效,有时会导致代码运行缓慢。然而,Java在机器人的某些部分非常受欢迎,因此您可能需要它。

Python

Python近年来尤其在机器人技术方面出现了巨大的复苏。其中一个原因可能是Python(和C ++)是ROS中发现的两种主要的编程语言。像Java一样,它是一种解释语言。与Java不同,语言的主要重点是易用性。许多人都认为这样做非常好。Python节省了许多常规的事情,这些事情在编程中花费时间,例如定义和转换变量类型。此外,还有大量免费的图书馆,这意味着当您需要实现一些基本功能时,您不必“重新发明”。并且由于它允许使用C / C ++代码进行简单的绑定,这意味着代码的性能很重的部分可以用这些语言来实现,以避免性能下降。我们很可能在机器人中看到更多的Python。

C / C ++

最后,我们达到机器人技术的第一编程语言!许多人都同意C和C ++是新机器人的好起点。为什么?因为很多硬件库都使用这些语言。它们允许与低级硬件进行交互,允许实时性能和非常成熟的编程语言。这些天,您可能会使用C ++多于C,因为该语言具有更多的功能。C ++基本上是C的扩展。首先学习至少一点C可能是有用的,以便您可以在找到以C编写的硬件库时识别它。C / C ++并不像以前那样简单,比如Python或者MATLAB。使用C实现相同的功能可能需要相当长的时间,并且需要更多的代码行。

相关推荐