这主要是参考“ Python vs Groovy vs Ruby? ”中的这个答案。
是什么让 Python 和 Ruby 更容易在 IDE 之外进行开发?
该链接还提到了控制台中的调试。这究竟是什么意思?
这主要是参考“ Python vs Groovy vs Ruby? ”中的这个答案。
是什么让 Python 和 Ruby 更容易在 IDE 之外进行开发?
该链接还提到了控制台中的调试。这究竟是什么意思?
Python 和 Ruby 通常比大多数 JVM 语言更容易在 IDE 之外进行开发,因为它们需要的“开销”更少。我将主要谈论 Python,因为那是我的主要语言。
通常,Python 安装只有一个库源(除非您正在使用virtualenv
),并且整个项目都存在于文件系统上。无需担心.jar
文件.class
——一切都是在运行时编译的,.py
文件是您的可分发文件。
此外,Python 比 Java 更简洁,Groovy 继承了 Java 的很多语法(尽管它抽象了一些东西)。IDE 有助于处理样板文件,从而减少程序员的工作量——但没有太多样板文件的语言不需要这种帮助。
我不同意在 IDE 之外更难开发 groovy 的说法。我已经完成了认真的 python 和 groovy 开发,还有一点 ruby,大部分都没有 IDE。
虽然没有pdb
样式调试器,但有一个控制台:groovysh 是一个非 GUI 控制台、命令行应用程序,而 groovyConsole 是一个具有简单语法突出显示和编辑的 GUI。rails 和 TDD 哲学强调使用测试而不是调试器进行开发,如果我有良好的测试覆盖率,我发现我很少(如果有的话)觉得需要使用完整的调试器。这对你来说是否重要取决于你自己的开发风格。
Groovy 简化了整体jar
/classpath
混乱。虽然您仍然可以根据需要设置类路径,但让 groovy 完全管理它要容易得多。Groovy 自动在类路径中包含$GROOVY_HOME/lib
jars ~/.groovy/lib
。安装库只是将其复制到那里。更好的是,使用@Grab
,您可以在脚本顶部声明您的依赖项,groovy 将自动下载您指定的版本,并递归获取其所有依赖项并设置正确的类路径和类加载器;它甚至可以管理依赖于同一个 jar 的不同版本的两个库。Grails 还具有声明性依赖项。
groovy 语言本身与 ruby 或 python 一样简洁和灵活。虽然您可以像完全成熟的 Java 一样编写它,但可以将 groovy 编写成看起来与 ruby 非常相似。
对 groovy 与 python 和 ruby 的一个有效抱怨是 JVM 的启动时间仍然明显更差。
此外,例如 Ruby on Rails 包含一些原本由 IDE 处理的东西,例如生成器和控制台。