Why are Ruby and Python more suitable for programming outside the IDE than Groovy?

Does this mainly refer to this answer in the Python vs Groovy vs Ruby section ? "

What makes it easier to develop Python and Ruby outside of the IDE?

The link also mentions debugging in the console. What exactly is meant by this?

+4
source share
3 answers

I disagree with the statement that groovy is harder to develop outside of the IDE. I did some serious python and groovy development and some rubies, mostly without an IDE.

While there is no pdb style debugger, there is a console: groovysh is a console without a GUI, a command line application and groovyConsole is a graphical interface with simple syntax highlighting and editing. TDD's rails and concepts emphasize development with tests, not debuggers, and I find that I rarely, if ever, feel the need to use a full-featured debugger if I have good testing coverage. It doesn't matter if it is up to you on your own developmental style.

Groovy simplifies the whole jar / classpath mess. Although you can still set the class path if you want, it's much easier to let groovy manage it completely. groovy automatically includes banks in $GROOVY_HOME/lib and ~/.groovy/lib in the classpath. Installing a library simply copies it there. Better than with @Grab , you can declare your dependencies at the top of your script, and groovy will automatically download the version you specify and recursively retrieve all your dependencies and configure the correct class path and Class Loaders; he can even manage two libraries that depend on different versions of the same bank. Rakes also have declarative dependencies.

The groovy language itself is as concise and flexible as ruby ​​or python. Although you can write it as full-blown Java, groovy can be written to look very similar to ruby.

One valid complaint against groovy vs python and ruby ​​is that the JVM startup time is still noticeably worse.

+3
source

Python and Ruby are easier to develop outside of the IDE than most JVM languages ​​in general, because they require less "overhead". I will mainly talk about Python because it is my main language.

In general, a Python installation has a single source for libraries (unless you use virtualenv ), and the entire project lives on the file system. No need to worry about .jar or .class files - everything is compiled at runtime, and .py files are your distributions.

Python is also more concise than Java, and Groovy inherits a lot of Java syntax (although it abstracts some things). IDEs help to cope with the template, which makes it less difficult for the programmer, but languages ​​without such a template do not require this help.

+5
source

Also, for example, Ruby on Rails includes some things that would otherwise be handled by the IDE, such as generators and the console.

0
source

Source: https://habr.com/ru/post/1345874/


All Articles