History of Java
As one of the most known and vastly used programming languages, Java has had a profound impact on how the present world looks. It’s more than 25 years old, to put that into perspective, if Java was a person, they would be old enough to have finished college! Java is on our smartphones, powering millions of apps. It is used in almost all aspects of our lives. You don’t have a developer who would not recognize its influence.
Java is an object-oriented language that was originally designed for all kinds of digital devices especially in the TV industry. History begins at Sun Microsystems, Inc. in 1990 when Patrick Naughton became annoyed with the state of Sun’s C++ and C APIs. He was given the opportunity to create an alternative language as part of The Stealth Project.
The name was changed soon to "Green Project" as Mike Sheridan and James Gosling joined the ranks, and the group began developing new technology that would allow consumer electronic devices to communicate with each other. Initially, the team initiated this project as an answer for the growing potential of digital devices such as set-top boxes, television. Nevertheless, at that time it was too advanced technology for the digital cable television industry. The TV industry thought that this gave too much power to the user and they were unable to find further funding.
James Gosling, Chris Warth, Patrick Naughton, Ed Frank, and Mike Sheridan initiated the Java language project in June 1991. Originally C++ was considered to be used in the project but the idea was rejected because it needed too much memory, the complexity led to developer errors. Problems with memory were resulting in programmers having to manually manage system memory, which often resulted in mistakes.
Those problems resulted in creating Java's automatic memory management model in which programmers should be spared the burden of having to perform manual memory management. In some languages, programmers allocate memory to create any object stored on the heap and are forced later for manual deallocation of that memory to delete any such objects. If a programmer forgets to deallocate memory or writes code that fails to do so a memory leak can occur.
Additionally, if a region of memory is deallocated twice, the program can become unstable and may crash. That was one of the primary reasons for implementing garbage collected environments. Gosling's attempts to modify and extend C++ were quickly abandoned in favor of creating an entirely new language which he called Oak. The language itself borrows much syntax from C and C++ but has a simpler object model and fewer low-level facilities.
Why was Java named Oak at the beginning?
Java was originally known as Oak, the story tells that the name Oak was used by Gosling after an oak tree that remained outside his office which he liked a lot, and so he decided to name the new language in honor of the tree. Oak is also a symbol of strength chosen as a national tree of many countries like the U.S.A, Germany, France. Due to problems they had to later rename it as “JAVA” as “OAK” was already a trademark by Oak Technologies.
Why did they finally choose Java as a name for the new programming language? Gosling and his team did a brainstorming session after which, they came up with few names such as DNA, RUBY, SILK, JOLT, etc. The name"Java" was the result of a brainstorming session that by James Gosling was described as “continuous wild craziness.”. The team wanted something that reflected the essence of the technology: revolutionary, lively, cool, unique, and easy to use. So why did the team finally use "Java"?
According to James Gosling, "Java was one of the top choices along with Silk". The name Java originates from a sort of espresso bean, Java. Some say that Gosling came up with this name while having a coffee near his office. Finally, the name was chosen as the best sounding one. It’s worth adding that there seems to be some disagreement on who suggested Java as a name, as Gosling says “It felt like most of the words in the dictionary were yelled out at some time or another.”
Java 1.0, was formally announced At Sun World in San Francisco at the same time Netscape also announced that it will license Java for its browser. JDK BETA was released in 1995 and the JDK 1.0 was released on January 23, 1996. Since the first release, the Java language has experienced a few changes. In addition to the language changes, considerably more sensational changes have been made to the Java Class Library throughout the years, which has developed from a couple of hundred classes in JDK 1.0 to more than three thousand in J2SE 5. Java was called one of the Ten Best Products of 1995 by the Time Magazine.
Java was well-received by developers in the software community, in particular, because of the principles like Robust, Portable, Platform Independent, High Performance, Multithread, and the “Write Once, Run Anywhere” philosophy. Java is unique programming that solved portability issues for the first time in the industry. Currently, it’s among the world’s top five most frequently used programming languages. In general, the simplicity and versatility of Java make it, in the real sense, a general programming language. Simultaneously, a number of Java frameworks and programming tools make it one of the most common languages.
The philosophy behind Java
Naughton, Sheridan, and Gosling set out certain rules for project development. The main effort was put on security, performance, and functionality. Those rules were that Java must be:
- Portable which means that it can be used on a majority of devices.
- Secure and robust.
- High performance.
- Threaded, interpreted, and dynamic.
Strengths of Java
- As one of the most popular programming languages, Java has developed a large number of libraries. Thanks to that, you can use a lot of existing libraries instead of spending time writing a custom code.
- Garbage Collection - Languages such as C and C++ require you to manually clear created objects, Java got a built-in garbage collection.
- Multithreading - out of all programming languages, Java has one of the best-developed solutions for multithreading.
- Java is time-proven - more than 25 years on the market, while scripting languages have fashion-based ups and downs dependable on their popularity.
- Easier debugging due to the architecture of JVM, which means easier support.
- Easy to Run, Easy to Write – Write Java once, and you can run it almost on everything. This is one of the strongest parts of Java. That means that you can use it to easily create mobile applications or run on desktop applications that use different operating systems and servers, such as Linux, Windows, or Mac.
Weaknesses of Java
- In general, Java requires higher qualified developers. Sometimes you need a few more lines of code than in PHP to implement something simple.
- Release Frequency – With each change in the runtime, developers must get up to speed causing internal delays.
Java is and for a long time will be one of the most vastly used programming languages. Java’s general-purpose means that you can develop an application of any complexity, that might or might not be related to the web.
Thinking about your project? If you want to talk about it contact us