Java is word that is all over the Internet today. Java is a programming language back by Sun Microsystems. Sun produces both Java compilers and runtime environments, more on those later in the article. For now lets start with a little background about general programming languages and how they work.
Back in the day a programmer used to write code in what is called Machine Code. Basically sequences of ones and zeros that when put into a computer performed a certain function on some data or another. After that came Assembly Languages in which the ones and zeros were replaced with basic English words. This enabled computer programmers to write code faster. The problem was that these codes were very basic and it became hard to produce the complicated programs that were desired. From this came the birth of what we use today called High Level Programming Languages. Among these are names you have probably heard before, C, C++, and Pascal, among others. With these languages computers could now be programmed to do more complicated tasks. What is done with code written in both Assembly Code and a High Level Code is that its converted using a Compiler into the machine code that the computer’s hardware actually knows how to use. The problem with this is that if you write a code it needs to be compiled and tested on different computers. For example, Macs and Windows use different kinds of machine code which is why not all programs that are made for Windows are available on Mac. This is where Java comes in. Java is a new kind of programming language that is universal and can be run on all types of systems.
The way that Java gets around the problem of having to use a unique machine code is actually pretty simple. Instead of compiling the code to machine code, it gets compiled into something like the assembly code called Bytecode. This Bytecode is then run on what is called a Java Virtual Machine, or JVM. These applications are also called Java Runtime Environments, or JRE’s. The JVM is what is unique for each type of machine and it takes the Bytecode and runs it on a virtual machine, which is actually just a piece of software, which interprets the assembly code into the native machine code for the computer. This saves development time by making this Bytecode standard and only having to write a JVM for each type of machine, and there are only a handful, instead of having to write every program for all the platforms. So instead of compiling the programs to be run on a every kind of machine, they are compiled to run on one kind of virtual machine which is available for all kinds of computers.
Java has become so wide spread that a JVM is installed with Windows and default for most types of Linux. If you are a programmer who has a lot of experience in older languages and want to learn something new, Java is the way to go for the future. Or if you are new to programming and simply want to get your feet wet, Java is a great language for beginners and teaches you a lot of the programming tools and techniques you need in other languages and to become a successful programmer. In fact in most schools C and C++ based classes in Computer Science have already been replaced with classes based on the Java programming language.