- The Field Guide to the Java Ecosystem
- Everything you wanted to know about Java, but were frankly too afraid to ask.
- In this guide
- Fundamentals
- What is Java?
- Java’s mascot
- Is Java the same as JavaScript?
- What can you build with Java?
- How is Java used?
- Business applications
- Outside business
- Who is using Java?
- Who owns Java?
- Oracle is the steward of Java
- How does Oracle own the copyright if Java is open-source?
- ‘Big tech’ contributes to the JDK
- Communities and user groups
- Glossary
- Thanks for reading. Let’s stay in touch.
- Thank you!
- Want more? Read these articles next.
- 📘 Part of: Learn Modern Java
- What is Java Used for in Today’s Programming?
- What is Java?
- Who is Using Java?
- Beyond Traditional Devices
- Open Source Projects
- The Benefits of Java
The Field Guide to the Java Ecosystem
Everything you wanted to know about Java, but were frankly too afraid to ask.
Updated: 04 September 2022
This is a 10,000-foot view of the Java ecosystem in 2022. So, if you want to understand how modern Java application development works, dig into this!
In this guide
We started putting this guide together because we know you have questions!
Whether you’re a DevOps engineer needing to support Java apps, or you’re a junior engineer wanting to go beyond the simple “hello world”, Java can seem intimidating, if you don’t have a guide to show you the way.
Our Java guide explains the activities, the software and the tools you need to know, and includes tons of links to other websites and blogs, so you can dive deeper into any topic you like. 🏊♀️
That’s enough intro for now. So grab a cup of Java and let’s begin with the basics:
Fundamentals
In this section we’ll cover the basics of Java.
What is Java? And why is it still important?
What is Java?
Java is an object-oriented programming language, and runtime environment.
Java code is super portable.
It runs inside a runtime called the Java Virtual Machine (JVM).
You can get the JVM on lots of different devices, from laptops to mobile phones.
This means that it’s easy to write code on computers and laptops, and then run it on servers.
Java’s mascot
Java is represented by a cartoon mascot called Duke, who kinda looks like a cross between a penguin and a doorbell.
Is Java the same as JavaScript?
No, Java is not the same as JavaScript.
JavaScript is a scripting language that runs inside your web browser and on servers.
But Java is a compiled language, similar to C++, which runs on servers and many other devices.
Java and JavaScript have different syntaxes, runtime environments, communities and libraries.
What can you build with Java?
Standalone, command-line apps: this is the type of app that you will probably develop when you first learn Java
Back-end applications: Long-lived server-side applications, like APIs, and so on. (You’re probably here! And me too. These are the types of apps that I’ve worked on for years.)
Desktop apps and games: Two famous desktop Java applications are IntelliJ IDEA and Minecraft.
Embedded applications: This is software which runs on connected devices, like TV set-top boxes or internet-of-things devices like fridges.
How is Java used?
Java is used to develop applications of all different shapes and sizes.
You won’t see most of the software that’s written in Java, because the source code is held privately inside companies.
Business applications
Many of the back-office (or internal) apps used inside companies, are written in Java.
Finance applications (Java is a very popular choice in the financial sector, e.g. for trading systems)
Logistics and fulfillment applications
Retail and ecommerce applications
And it’s not just used in business. Governments and public sector organisations use Java too. Even the military uses it.
Outside business
Desktop apps and games (like Minecraft Java Edition)
Who is using Java?
So who do we know is using Java?
And these are just a few who talk about it publicly. There are many more companies which use Java.
Another easy way to find out who’s using Java is to simply look at Java job descriptions.
Who owns Java?
This is a tricky question to answer! But we’ll try anyway:
Java has a long history, but there is definitely one company which has been involved with Java much more than others. (Hint: 🅾️)
Oracle is the steward of Java
Oracle is the main steward of Java.
Officially, Oracle owns the Java trademark 1 and owns the copyright to much of the source code of the JDK (see an example).
In fact, Oracle fought a legal battle over Google’s copying of Java APIs in Android. But Oracle utimately lost the case in 2021.
Oracle traditionally makes money from Java by selling a subscription to Java, which comes with commercial support.
How does Oracle own the copyright if Java is open-source?
Although the OpenJDK code is open source, it still has copyright owners.
Every contributor must agree to grant Oracle a joint copyright interest in their code. (This is quite common with open source projects that are led by large companies.)
So ultimately most of the source code carries the text “(c) Oracle”.
‘Big tech’ contributes to the JDK
Oracle isn’t the only contributor to Java.
Other big companies have an interest in Java too, and they make contributions to the OpenJDK source code.
Communities and user groups
Java evolves through many different committees and communities.
This is where people come together to develop new features or agree new standards for Java.
The Java Community Process (JCP) is the way that new official Java standards get developed and ratified.
But anyone can create a Java library and publish it.
Glossary
Unsure about a Java term? Let us decode it for you in this glossary section! JDK Java Development Kit. Or, more officially, “Java Platform Standard Edition Development Kit”. A JDK is a set of tools to compile and run Java code. There are several different JDKs available, see WhichJDK for a comparison of them all. JAR Java Archive. A JAR is a file that usually contains compiled Java files (class files) and extra metadata, and even other JAR files. It’s designed for distributing and sharing compiled Java programs and libraries. You can create a JAR file in IntelliJ.
By Tom Donohue, Editor | Twitter | LinkedIn
Tom is the founder of Tutorial Works. He’s an engineer and open source advocate. He uses the blog as a vehicle for sharing tutorials, writing about technology and talking about himself in the third person. His very first computer was an Acorn Electron.
Thanks for reading. Let’s stay in touch.
It took us this long to find each other. So before you close your browser and forget all about this article, shall we stay in touch?
Join our free members’ newsletter. We’ll email you our latest tutorials and guides, so you can read at your leisure! 🏖 (No spam, unsubscribe whenever you want.)
Thank you!
We’ve sent you an email. Please check your email, and click the link inside to confirm your subscription.
Want more? Read these articles next.
Java IDEs: The Definitive Guide (and Top Picks): Not all IDEs are created the same, so if you’re writing Java code, make sure you choose a good one.
Run a web server in a Linux VM with Vagrant [Learning Project]: Learn Linux and virtualisation basics by deploying a website in this tutorial.
What is Linux?: Understand what Linux is, and the fundamental parts you should know about.
14 best practices for containerising your Java applications: Best practices to follow when building and running your Java application in a Docker container
📘 Part of: Learn Modern Java
Tutorial Works is a website to help you navigate the world of IT, and grow your tech career, with tips, tutorials, guides, and real opinions.
Thanks for being here today! 👋
Copyright © 2022 Tom Donohue. All rights reserved, except where stated. You can use our illustrations on your own blog, as long as you include a link back to us.
Tutorial Works is a participant in the Amazon.com Services LLC Associates Program. As an Amazon Associate we earn from qualifying purchases. Amazon and the Amazon logo are trademarks of Amazon.com, Inc. or its affiliates.
What is Java Used for in Today’s Programming?
When working, building, creating, or simply unwinding and relaxing – any online activity should take place inside a safe environment. Java software is a renowned software that operates virtually anything, and everything in the digital sphere.
Equipment of all sizes make use of Java. This ranges from laptops, to data centers, to game consoles, to scientific supercomputers.
But before I get into the details. Perhaps I should answer the pressing question of exactly.
What is Java?
It is a free-to-use programming language that’s also open source. In any case, it’s a widely used language, that’s designed for use in the distributed environment of the internet. Additionally, it’s made with the look and feel of the C ++ programming language. Lastly, it’s worth mentioning that it enforces an object-oriented programming model.
Java is also particularly known for its role in creating applications. The versatility of it mean you are able to build apps that run on a single computer, or one that can be distributed across multiple servers and clients within a network. They are also commonly found as a small application module. These are also referred to as Applets. These segments form part of a webpage. Though, this is now considered a legacy technology.
Who is Using Java?
It’s popular, to say the least. Java plays a significant role in everyone’s digital life, from web page, to television screen.
In total, the number of mobile phones running Java is 3 billion. Java is also considerably popular in the development of Android smartphone apps. Its base of enterprise desktops takes a decisive share, however. In total, approximately 97% of Enterprise Desktops run Java. In the US, 89% of Desktops or Computers in the U.S run the programming language.
Beyond Traditional Devices
In total, there are over 5 billion Java Cards in use. This extends beyond the realm of computers and mobile devices. 125 million television devices run Java.
Meanwhile, Java continues to be the most used development platform. the number of Java developers, worldwide, numbers 9 million.
Open Source Projects
In all, there are many open source projects that let developers create efficient applications. Many open source projects engage in building MVC applications, database connectors, as well as messaging connectors.
It is also worth noting the Graal and GraalVM projects. These are a new approach for running Java-based applications – also known as AOT .
The Benefits of Java
It’s a popular tool, and for a variety of reasons. From the inherent benefits, to the after-effects. I’d like to take you through some of its merits. Firstly, this language is simple for even novel developers. Java is quick to learn, making this a highly logical choice.
Java runs on JVM. This essentially means it provides many developer-friendly mechanisms. Some of these include Code Optimisation, Memory Management, as well as the Garbage Collector function. Of course, you’re not going to be restricted purely to Java. You can also develop code through a number of methods. Those include Groovy, Scala, and Kotlin, which can run on JVM.
In age of constant improvement and upgrades, Java is ahead of the curve. In recent years, this tool has made frequent new version releases. Today, Java upgrades come very often . This shows that Java is trying to remain close to developers. In turn, this helps release some functionalities for the purpose of receiving feedback. Ultimately, each subsequent product gets developers’ feedback, to help improve the product in its next version release.
Another series of benefits are the tool’s portability in a network. It is also a notably, object-oriented tool with a highly robust code. Security is an additional merit, as it ensures secure data.