C 是制作机器人的好选择吗?

tranmexella1986

New member
我过去曾被雇佣来对各种商业运动鞋抢购机器人和工具进行逆向工程。它们中没有一个是用C 编写的,它们都是用js / node或C#编写的。其中大部分是用js / node编写的。这其中有一个很好的理由。机器人不需要疯狂优化的性能来完成任务。我们不是在讨论优步(Uber)这样的大公司。Node已经足够强大了,足以制作机器人。您可以更快地编写代码,更快地学习js,因此更快地赚钱。
 
Python基本上是为你的需求而设计的,它是一种脚本语言,这意味着开发时间更快,但执行速度会有所损失。而在C 、Java、C#等语言中则恰恰相反,它们是编译型语言,这使它们更快,但需要编写更多的代码。除非你需要计算大量的东西(对于机器人来说不需要),否则“Python已经足够快了”。C 非常适合于更加要求严格和复杂的应用程序。希望我能帮你,祝你好运。
 

upkelchada1975

New member
C 在良好编码的情况下提供了最佳的性能,当我需要更高的性能时,我不使用Python或类似的语言。你可以看一下json解码库并做出比较。
 

foodsrelabu1970

New member
另外一个事情是机器人花费大部分时间等待请求/响应或解析JSON/HTML。因此,如果您选择使用Python,有几件事情可以做来最大化性能:-使用asyncio使您的I/O在事件循环上运行,并使用较少的系统资源 -使用高性能JSON解析库,如“orjson”,而不是内置的json库-使用高性能HTML解析器,例如“selectolax”
 

masmigelkia1975

New member
我会说C#或Java。Python很好,但如果你要扩展它并且必须管理大量线程,Python会落后于C#/Java。我同意C 可能过度设计。
 

kerankuvi1981

New member
这取决于使用情况和所需的性能。我会从Python开始,但如果机器人增长并且需要更多资源,那么性能将成为一个问题,这就是你需要考虑C 速度和性能优势的时候。
 
我非常喜欢C ,JavaScript,Haskell和ASM。2011年后,C 发生了很大的变化,变成了一种全新的语言,但人们仍然固守C 带有类和丑陋的原始指针。C 的门槛比以往任何时候都要低,但精英主义和仇恨阻止了人们进入它。
 

sawfburvefi1978

New member
Python不像C 那样编译。Python在Linux上工作得很好,但如果在其他系统上,则可能需要Anaconda Python。C 没有这个问题。
 

combeapocu1974

New member
我认为C 不是这项任务的好选择。如果要考虑速度/性能等方面,C 更适合客户端应用程序。我会选择Python来编写机器人。你会更高效,因为在Python中你不需要关心指针、内存和其他东西。
 
Linux 绝对是开发的推荐操作系统。安装所有所需的库和工具要容易得多。选择 Linux,大部分好的集成开发环境 (例如 jetbrains 的) 也同样适用于 Linux。
 

lentanosi1972

New member
这不再是真的了。现在的 Windows Wsl 2 Docker 才是绝对的力量。你可以获得两个平台最好的东西。
 

intyrapso1986

New member
它的设置几乎相同,但是相反 - 你使用windows作为主机,WSL中使用Linux。你可以在Linux中获得裸机的性能,只需要在powershell中键入“wsl”即可访问。
 

ilsininy1970

New member
这是一直存在的问题。我必须使用有线的技巧和大量的谷歌搜索来让Python在Windows上运行,否则你就必须使用WSL。C 可以跨平台使用。在C 中,你不会遇到像Pip或任何类似GIL的问题。git克隆你的库#include 使用Easy peasy在C 中,你还可以访问基于磁盘的数据结构,在其他语言中你必须使用外部数据库或流式处理。基于磁盘的数据结构使你能够使用硬盘作为RAM。
 

exonperte1988

New member
不要听取所有建议,只需学习Go(Golang)。它是由谷歌开发的高性能并发语言,与C/C 一样快,并且不像C 那么难学。这是你最好的选择!
 
顶部