We can easily forget the value of technologies that were once popular among the apes but were covered up by various new technologies until they were destroyed. Take COBOL, the magic weapon used by the old apes back then, as if it were a dead fish, and it was basically described by modern apes as such: it is worthless, fishy, outdated, and it will not benefit you. Java as the backbone of modern apes may become the next COBOL at this point.
It has been a long time since how many books are sold by JAVA technology. The purpose of Java language, which is now in middle age, no longer appears on the covers of various magazines. It has been 19 years since JAVA was born, and the application development circle has begun to circle around new technologies such as "Node.js", "Objective-C", "Dart", "Go" and so on. Java? That is a legend in the Web 1.0 era, right?
Before we forget the role Java plays and its outstanding contributions in the computer industry, here are 12 absolute reasons to tell you that Java will not only not be destroyed like COBOL, but will also grow stronger in the subsequent eras.
In other words: Don’t say that this is a counterattack of Java, Java has always been there, and its status cannot be shaken.
The key reason why Java continues to dominate, No. 1: Indomitable in the political (usually inferior) struggle
At the beginning, the technology community never thought Java would succeed because it had too many opponents and was all "rich". Despite this, Java has flourished. Those who are surprised that Java still exists must have spent too much time listening to those who hold a grudge against Java, and not spending time understanding why Java succeeds.
Microsoft was the first powerful opponent Java faced, because MS-DOS provided universality at that time, and Microsoft saw that Java was the most likely replacement for this universality. Redmond has been criticizing Java from the very beginning, fighting against it in every possible way (translator's note, Redmond is the headquarters of Microsoft, here refers to Microsoft Corporation). In the desktop application direction, Java never looks for the development driving force it needs, partly because it takes too long to start a powerful Java virtual machine. Despite some startup delays, Java applications are still available on the Window platform.
Steve Jobs never accepted Java for some unknown reason, even in an era when Macs were ignored by everyone except Adobe. Java compatibility can bring a lot of useful code, but Apple has never regarded Java as its first choice. (Indeed, iOS smartphones are smoother than the Android I use, so maybe Steve is right.)
Many struggles within Java also brought great pain to it. IBM likes Java, but has been fighting Sun. IBM's decision to call the excellent IDE tool it developed "Eclipse" has never been readily accepted by Sun's staff. Sun has never understood the business field as deeply as IBM.
Despite these reasons, although Java creators have many mistakes in the development of Java, Java is still growing rapidly, and has achieved fruitful results in the field of server applications, meeting basic business needs in the field of desktop applications. All technologies need to move forward in political turbulence, but Java goes more difficult and farther, proving that Java is usually an excellent choice for many applications.
The key reason why Java continues to dominate, point 2: The magic of threads
One of the strengths of Java virtual machines is multithreading control. JVM has made excellent optimizations for the stability of running hundreds of threads on large multi-core machines. This is also why other languages create cross compilers and emulators in order to run on the JVM.
This ability of Java also attracts many high-traffic websites. They can develop on desktop and then throw it on the server to allow the JVM to perform multi-core functions.
Ruby has become a current rival of Java because of its concise syntax and good source code readability. But when performance became a bottleneck, Ruby developers moved to JRuby, a Ruby environment simulated in Java and enhanced thread processing capabilities under high loads. Sun's old apes' handling of details made JRuby very popular. (Translator's note: It seems that most people finish writing Ruby programs and then use JRuby to make war and throw it on the server...)
The key reason why Java continues to dominate, point 3: Java is the language for beginners
Religion, the army and the prosperity of the country are inseparable from the brainwashing of the Chinese people in their youth. As a university AP computer course (translator's note: high school students can take and count to university credits. Provided by the American University Council, the institution responsible for the US SAT) means that many students first come into contact with Java. Due to this preconceived reason, when they learn other new languages, they will reflect on the advantages and disadvantages of Java. Even if most students change careers and learn other languages - although most students throw Java aside after taking courses - they will still be influenced by Java when thinking.
Java as a teaching language has its reasons. Some young apes don’t like to declare data types, thinking that it’s like someone asking you to wear overalls and wear a belt. This may seem abstract, but in order to allow young apes to understand some of the principles of computers, this is a good method. Let young monkeys declare data types when writing code, and then the compiler will tell them that the data types do not match and cannot be compiled can help them better understand the underlying principles of the computer.
Some so-called fashionable languages have abandoned curly braces because they find it troublesome to maintain them. This may be true, but curly braces are very useful for those newbies as this helps them understand nested blocks of code. Curly braces help newcomers disassemble all nestings.
Some people want to work hard to promote their own language, and in most cases their beloved language is more free and does not have as many restrictions and rules as Java. They have a very good idea, but they ignore the fact that the simpler, cleaner the grammar will have obvious problems in late development. Some people find this "wearing overalls and wearing belts" suffocating, but Java promotes better programming habits from the beginning. When newbies are well trained, they can handle this free and dangerous way of programming.
The key reason why Java continues to dominate, No. 4: Cross-platform compatibility (already close)
Although Java is not the first language to provide cross-platform compatibility, Java has become the most popular (cross-platform language). This does not mean that Java is perfect - a missing library or a mismatched library will cause the program to crash. You can't put desktop programs that require a lot of memory compiled with the latest JRE 1.7 on a Java ME phone to run. Java is not that compatible.
But Sun and now Oracle have made the best efforts to make programs available across platforms. When a program (cannot be used on multiple platforms), the reasons (which causes these problems) are usually understandable. If you use the appropriate Java version and make sure there is enough memory, then (the program) will generally work properly. Java programmers can use their desktop development tools to encode and deploy to the target device, maybe a phone or a server. If the compiler contains the correct library and uses the correct version, the code can run. This is a valuable feature.
The key reason why Java continues to dominate, No. 5: Continuous success on chips
Java may never have created large applications in the desktop field, but it has found a hotbed in the mobile world - an explosive market segment. The Android platform is built on Java from top to bottom, and its sales are easily surpassing the iPhone today.
This dominant position is not new. JAVA ME as a streamlined language and VM has been widely used on many so-called feature phones, and the number of smartphones in the world is almost tens of billions.
When you mix them all together, the advantage of Java is amazing.
The key reason why Java continues to dominate, No. 6: Blu-ray
Java was once called "Oak" and was a language designed for set-top boxes, and Sun wanted to occupy this market. Things didn't go exactly as planned, but Java found a suitable place in the "living room". The Blu-ray standard is built around Java, and anyone who wants to add extra content to the Blu-ray disc must get its Javac compiler version.
Blu-ray discs are not limited to storing video content. Those extra features and interactive tools can be modified and enhanced using pure Java code. Blu-ray discs are a mixture of compressed video and compressed Java bytecode. Using the Blu-ray standard, you can achieve many functions.
The key reason why Java continues to dominate, No. 7: Curly braces work just in time
Those enthusiasts of trendy languages like Ruby, Python, or CoffeeScript happily disdained how Java (and C) required programmers to repeatedly typify curly brace keys to clearly express the beginning and end of the code segment. Braces, curly braces, and even square brackets - these people hate them deeply. (I hate them myself, too, but I still miss the programming way there are some types of Lisp languages that let you end everything with a square bracket.)
But changing the punctuation marks does not eliminate complexity. If useful, it just hides or conceals complexity. After using blank spaces like tabs, you can only feel the things you cannot see with intuition. If the if statement only leads one line of code, there will be no problem, but when many layers are nested, it will be difficult to see clearly. When I program in Python, I find myself counting these indents over and over again. Just because it looks like English does not mean it is as simple as understanding one sentence.
The reason why Java continues to dominate, No. 8: Groovy
If Java developers had to have a cleaner and simpler syntax with dynamic types, they didn't have to run a novel language. They can use Groovy, a neat tool with a preprocessor, which can generate Java bytecode. This language is also fully integrated into Java, so you can mix calls to Java libraries into your Groovy. It's like writing Java code abbreviation.
This flexibility allows development engineers to find a way out for problems. Of course, Groovy is slow - this is usually when dynamic method calls are used - developers can always use Java to rewrite important and time-consuming core operations.
The reason why Java continues to dominate, No. 9: Java Virtual Machine
Java virtual machines are designed and optimized for the purpose of running the code generated by the Java compiler, but at some point, developers realized that Java virtual machines can run other codes as well. As long as compilers produce standard Java bytecode, Java virtual machines don't care about the programming language they use. Haskell, Scala and Clojure developers designed their compilers in this way to get on the Java express train. And they are just a few of the better representatives in this ecosystem generated by Java virtual machines.
Attraction is obvious, Sun/Oracle is working hard to create a cross-platform environment, and all others benefit from it. Sun/Oracle engineers eliminate the differences between platforms and consider compatibility issues, and then everyone can run the programs they want to run.
Microsoft borrowed (and extended) this idea when creating C#, designing compilers for most major languages so that the C# virtual machine can run all the programs written in these languages. C# programmers say they can write programs in many different languages, just run them on a virtual machine through a Windows box. How flexible!
The reason why Java continues to dominate, No. 10: Most of the NoSQL revolution is built on Java
Long ago, the database was a mysterious black box that saved information and responded to query requests quickly and efficiently. Then the NoSQL revolution came, and programmers realized that they could write their own databases themselves and prune their code according to their needs. Many of the most important NoSQL tools are written in Java. Cassandra, Lucene, ElasticSearch, HBase and Neo4J are just some of the frequently mentioned NoSQL options. Then there are some programs like acid-state, written in Haskell and run in Java virtual machines.
These tools are usually open source and can be easily integrated. Some developers run it independently, while others integrate them in their own modules such as libraries. Either way, Java becomes a common language in the database layer, ensuring that Java developers' lives are easier. They are less worried about glitches due to character encoding and line ending characters. This means that Java developers can enjoy the fruitful fruits brought by the NoSQL revolution.
The reason why Java continues to dominate, No. 11: Minecraft games are integrated into the common complex of post-00s
Maybe Brooklyn fashion non-mainstream people scoff at Java, but Java programmers are one step ahead. While the Ruby fashion group was gathering a group of its own fans, the generation that followed fell in love with Java. Why? One word: Minecraft. It is written in Java. If kids want to extend the game, they need to learn Java to design their plugins. This ensures that the next generation of programmers will learn Java first.
The reason why Java continues to dominate, No. 12: Open Source
Sun has always been one of the leaders in the open source field, but it has hesitation when it comes to fully open Java. But this has not prevented Java programmers from releasing many great libraries and projects with loose open source licenses. The Apache project has been using a license that doesn't require much return to provide excellent Java code.
Sun completed the work of exposing most of the code under the GPL license in 2007, and since then, it and its new owner, Oracle, wanted to work hard to become what it considers a qualified steward of Java. Of course, this open stance has not stopped Oracle from dragging Google into a chaotic legal lawsuit, but on the other hand, the Java platform is largely open and free.
Many people hate it, but Java continues to move forward
It is true that Java has its own problems, and there will be more and more people who hate Java, and they will fill the online comment section with their dissatisfaction. The Java garbage collector will cause minor frustration in the program. The heavy rules of writing programs cannot stop those really bad codes. The annotation is too complicated. The characteristics are not as frequent as before. Braces add confusion. The list of its disadvantages is long, but it is usually reasonable.
However, there is currently no rival that can compete with it in breadth and depth. While some complaints are easy to solve, the solution itself can bring its own problems. Perhaps the closest thing is JavaScript, which relies on lightning-fast Node.js, which is becoming increasingly attractive in the server space. But these ideas can be copied, and programmers can also use them to write fast Java.
In the end, this is one of the advantages of Java: it runs all programs and accepts changes. If you need different features, you can replace most of the libraries with your own code. Languages are open source and flexible. No matter what limitations the language or platform are, they can be solved relatively easily. This means that Java programmers continue to be one of the most productive people. Even if related books no longer occupy the best-selling list and software updates are not as frequent as before, Java will still exist or even be more prosperous.
The above is all the content of this article. I hope it will be helpful to everyone's learning and I hope everyone will support Wulin.com more.