Java is still taught as language for beginners to this day. I know, because I’m taught Java right now in my introductory informatics class. In this post I want to share some thoughts on why I think Java, as a language for beginners, should be phased out and replaced with a different, easier and modern language.
Primarily I don’t think Java is a bad language. There are certain limitations which led to the development of languages such as Scala. I just think it is not suitable for beginners.
In the 90s it was more easy to teach Java as first language instead of languages such as C++ and C, as, back then, they were still, to a certain degree, underdeveloped and had some unsolved problems. Now we enjoy a big variety of dynamic languages like Python which I would prefer beginners to learn rather than Java.
Java is praised for its “compile once, run everywhere” principle, but this principle is hugely outdated, for computers have much more performance now in order for interpreted languages to compete with native languages.
2. Obsolete Syntax
Java also uses syntax considered obsolete these days. The amount of brackets and semicolons are I think an unnecessary weight on beginners. One of the primary reasons I think languages like Python are much more suitable is because the syntax is much more simple, and that there is less unneeded clutter, which just distracts from the actual important things in programming.
But primarily Java’s syntax and language is not in any way elegant, it feels sort of restrictive. Unlike other languages the overloading of operators is not allowed, and other things such as which parameters in a function are passed as reference and which not, are what I think a dumb design; Java focuses too much on objects.
3. Java is being replaced
There are a lot more languages right now which are way easier to learn, to program in, and to build stuff with. Java is simply becoming outdated.