我目前不会两种语言中的任何一种。一款软件的设计接近完成。
有趣的是:
- Ruby:愉快。遵循思维过程。为人类而生。
- Go:表现良好。快速编译时间。
我不知道 Ruby 的性能如何。如果它比 Go 慢很多,我会选择后者(这里谈论典型的速度)。
我最终会同时学习两者,但现在,这将决定先学哪一个。
更新:这是一个非常基本的图像编辑程序。技术速度,尤其是感知速度应该很高。启动时间尤为重要。
最佳答案
遗憾的是,这两种语言都不适合桌面图像编辑程序。
您没有告诉我们您想要哪种桌面,我假设它是 Windows 或 Mac。
Ruby 不合适,因为它无法满足您的 2 个要求:
- 它的启动时间非常糟糕,因为在启动时它必须初始化一个相当复杂的 VM,这涉及加载其标准库的相当大一部分
- 它执行图像处理所需的那种计算非常慢(与 C/Java/Go 相比)
Go 是静态链接并被编译为机器代码,因此它的启动时间非常好,速度接近 C(即它是继 C/C++ 之后您可以选择的最快的语言)。
但是,Go 不支持编写 Mac 桌面应用程序(即它没有连接到 Objective-C/Cocoa 运行时的桥梁)并且对编写 Windows 桌面应用程序的支持非常差。
如果您使用的是 Windows,那么唯一能让您快速启动的语言是 C/C++/Delphi。 C# 可能有可接受的启动时间并且它对于任务来说足够快(非常流行的 paint.net 是用 C# 编写的,你可以找到 BSD 许可的旧版本代码并重新使用它的很多代码)。
对于 Mac,我会推荐 Objective C——它是该平台的原生语言,拥有最好的文档和最好的免费开发工具 (XCode)。您可以使用 https://github.com/philippec/Pixen作为起点。
关于ruby - 以性能为中心的桌面程序 : Ruby or Go?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6605051/