假设我正在编写一个封闭源代码的商业软件,该软件将在以下情况下部署:基于 .Net 的 Windows 桌面应用程序、ActiveX 控件、Windows Netscape 插件、基于 Cocoa 的 Mac 桌面应用程序、Mac Netscape 插件、Java托管在浏览器中的小程序。在共享 Ruby 源文件中编写我的模型和控制器类并使用 MacRuby、IronRuby 和 JRuby 集成到各种运行时中,在代码共享方面是否可行?我的视图类可能会被编写为在 Windows 上使用 WPF,在 Mac 上使用 Cocoa 以及在 Java 上合适的任何东西(SWT?)。
从我的角度来看,这里最重要的是代码库的长期维护,在我必须针对的三个平台上,Ruby 似乎已经接近于成为一流的语言:.Net、Cocoa 和 Java,和任何语言一样。我错了吗?
其次是避免对我们的代码有任何病毒式许可要求。我看到了 JRuby 在各种许可证下的发布位置;我是否可以假设我可以分发二进制文件并且许可证不适用于我为自己的应用程序编写的任何 Ruby 文件(而不是修改他们的框架。)
Ruby 是否已在任何知名的桌面应用程序中使用过?以前有这样做过吗?