We all have heard about Java. It's probably one of the most well-known, if not the well-known, programming language. However, Java has become a meme on the recent internet. It also has been receiving a lot of criticism in recent years. But then the question.., why is it one of the most know programming languages? Is it still worth learning? Does Java have a future? Will coders of the new age forget about Java?
To answer these questions, we need to first answer is Java worth learning, and what are the pros and cons of it, because that is where all the answers lie. Now, there is no definite answer to whether Java is worth learning or is it trash. It actually depends from person to person. In reality, the cons of not learning or the limitations of Java are some of the reasons why you should learn Java. Confusing right? So it Java to an absolute new programmer. Let's dive into it deeper.
Fear to newcomers - Now, what if one day you decide to explore the world of programming and you decide to start off with Java. But as you try to write your first "Hello World !" code, you find out you have to write these weird syntax that is extremely big to write than the part of the code giving you the output, like "public static void main (String args)". You get confused about what does this even means, and why to print a simple statement you have to write "System.out.println();", instead of just println, or maybe why is there concepts of scanner class, buffer reader, or other i/o stuff. Well for a normal coder, these don't generally matter, but for a beginner, one might lose interest and search for an easier language like python to go with. However on the other hand, with this tight syntax, you are focusing on smaller details carefully. You are checking whether you are following a proper syntax. This helps in creating certain good habits, and in the near future, if you migrate over to a newer language, it would be a piece of cake for you.
Easier Language - Python and other languages are easier to learn. You don't have to think about semi-colon, braces, or other stuff. Also, you don't need to define the main method. Its way of taking user input is way simpler than Java, and its prebuilt functions are short as hell. However, even Python comes with multiple flaws. Just a note that it is the most studied language because of how easy it is for a coder to migrate in it, but it is not the most used or learned language, which is JS. So when you are parting way with braces you must keep up with something to differentiate the structs and classes, and python is left with no choice other than indentation. And trust me those indentation errors are raging. Back to Java, learning Java helps you to migrate to other languages if needed easily. Using java can give a better understanding of how OOP works. Java is platform-independent and is generally faster and more efficient than Python because it is a compiled language.
Python can do more than Java? - NO IT CAN'T! Java can do way more stuff than Python can do. Since this is becoming more of a Java vs Python, I shall not elaborate further instead provide the source for my debate over this: https://stackoverflow.com/questions/5126346/what-kind-of-things-can-be-done-with-java-but-not-python
Conclusion: In the end, we can conclude, that Java in fact is one of the most hated for silly reasons. Java is still and will be one of the most commercially popular languages. Recently to Java's competition, languages like Kotlin have shown some promises. Kotlin uses JVM too, but we have to wait and see whether Kotlin shall replace Java, or shall it be another fallen language at the legs of Java. If you want a more detailed explanation, do share and comment your thoughts