使用哪种编程范例?

use*_*366 9 paradigms robotics programming-languages artificial-intelligence

我是一名高中生,之前有过一些编程经验.现在我想深入了解人工智能和机器人世界(制作AI程序和游戏以及制作机器人).哪种编程范式对这些主题更好?我将根据它学习编程语言.我的学校教Java,但由于它只是一种OOP语言,我不知道它是否适合这项工作.多范式语言对这些更好吗?

我应该学习Python,C,C++,Java还是LISP?

Pau*_*ulb 5

我喜欢Python作为语言的瑞士军刀.它具有很强的适应性,当您的需求和兴趣发生变化时,Python仍将是您的宝贵工具.

几年前,我会建议Smalltalk.这是一种非常简洁的语言,但社区和生态系统正在逐渐消失.

祝好运.


Nov*_*vak 5

对于AI,在技术层面上,它并不重要.只要您了解语言,您就可以使用任何现代语言获得不错的结果.我看到非常复杂的软件包放在最奇怪的语言中,只是因为程序员碰巧喜欢那种语言.当然,面向对象语言进行AI编程没有任何问题 - 您可以像在其他应用程序中一样设计用于AI的对象,并获得相同的奖励.如果我从头开始构建一些东西,我可以选择使用Java编写AI代码.

您的语言技能可能会有所作为的地方在于与他人合作.而且我的定义非常广泛,包括与其他人编写的软件包一起工作,从具有语言导向的书籍中学习等等.认为关于AI的好书不会依赖于任何特定的语言,但将使用伪代码来获取想法.可悲的是,我的观点并不普遍.当然,你不能用伪代码编写包.C/C++和Lisp很常见,但并不常见,我想把它推向他们.此外,如果这对你来说不仅仅是一种爱好,那么无论如何你将学习一大堆语言.

我不是机器人专家.其中一个很大的区别是,在某些时候,你会想要在更低的层次上与硬件进行交互,这让我觉得C或C++会更常见.其他人提到了乐高头脑风暴,这也是一个很好的想法.Mindstorms背后的语言是另一种语言LabVIEW的变种,你可能不会听说过.LabVIEW在工业中广泛用于控制测试设备,控制测试设备与控制机器人非常相似.LabVIEW/Mindstorms的好处在于它非常易于使用并且可以非常快速地获得良好的结果.它的缺点在于它与正在讨论的任何其他语言的编程风格截然不同,并且知道它对学习其他语言没有多大帮助.