DEV Community

Discussion on: Pitch me on Java

Collapse
 
kithminiii profile image
Bhagya Kithmini

Pros of Using Java:

  • Simple
  • A Secure Language
  • Cheap and economical to maintain
  • Platform-independent
  • Java provides an efficient memory allocation strategy

Cons of Using Java:

  • Slow and Poor Performance
  • Poor GUI
  • No backup facility
  • Significant memory space required
  • Verbose and complex code
Collapse
 
leob profile image
leob

"Slow and Poor Performance", "Poor GUI", "No backup facility" - are you talking about Java on the desktop? (applets, swing, JWT) ... that's a disaster, and always has been, but Java on the server is a different story, it'd well-respected.

(scalability and memory management of the JVM in server environments are arguably strong points ... verbosity of the language remains an issue, but you can use other languages on top of the JVM)

Collapse
 
thexdev profile image
M. Akbar Nugroho

Apache Cassandra is written in Java and it's fast 🤷‍♂️

Collapse
 
bigbott profile image
Yuriy Novikov

Slow and poor performance? Where is it came from?
Compared to which language? JavaScript? Python? Ruby? PHP?
Do you have a benchmark?

Java is among fastest languages. For some tasks it is comparable to C++. With much simpler memory management.

Verbose - yes, but it is feature. All your fancy JavaScript oneliners should be well commented to be understood. Java code that follows conventions is self explained.

Writing GUI is not simple in Java, but it is possible. Check Eclipse and Netbeans. Those apps are among most complex GUI applications you ever seen and they written entirely in Java.

Collapse
 
siy profile image
Sergiy Yevtushenko

Java is not slow.
Java is not for desktop apps.
Java is reasonably verbose, which makes support and maintenance of long-living projects much simpler. As a consequence, Java dominates enterprise software development. Needless to say that it means virtually infinite number of jobs, constant high demand and great salaries.

P.S. Java is very expressive and simple language with very straightforward, consistent and well thought out syntax.