DEV Community

Discussion on: Common Java myths and misconceptions

Collapse
 
darkstone profile image
Andries

What modern developers call is slow, is sometimes not the language per se, but the workflow around the language and tooling. For example developing something Python is the workflow is pretty simple, edit - run - observe. The feedback loop is short. I can type and observe the effect immediately. The same advantage for example using flutter. Every time i hit save in my IDE/editor the UI gets updated almost immediately.

Java on the other hand has the following development cycle:
Type → compile → package as jar → run → wait for web server to start up → observe code change. The sad part of all this is that modern Java frameworks such as springboot compile, package and run my web apps sometimes in under 15 seconds. But still for them script kiddies is just to slow. In fact I have seen some "modern" java script tooling frameworks take sometimes even longer to build a fully deployable artifact.

Collapse
 
alainvanhout profile image
Alain Van Hout • Edited

Ah yes, but at least the java package manager (maven) doesn't let me die of old age before it's done, nor does it create singularities on my file system 😆

(on a more serious note, hot reloading can alleviate much of what you mention)

Collapse
 
darkstone profile image
Andries

In all honesty my experience of the tooling for Javascript was much worse than I've ever experienced with Java. Specifically adding a dependency via NPM would sometimes break my project build to such an extent that I had to start almost from scratch. At this stage I rather deal with "slow" Java than me having to start the same project everytime NPM crash my project.