This is Lesson 1.2 of the Java programming course.
The history and usages of Java
Java dates back to the early 1990s as a research project undertaken at Sun Microsystems (now part of Oracle) to look at the application of computers to consumer electronic devices. The research team originally considered using C++ but decided the problem was best addressed by creating a new language with the following features:
- Simple & familiar: They wanted the language to be based on C++ so existing programmers would feel at home, but at the same time reduced in complexity.
- Object-oriented: They wanted to use the modern approach to software development that more closely models the real-world.
- Robust: The language should be strictly checked and omit the error-prone features of C++.
- Secure: There should be self-checking to ensure each program's own integrity.
- Portable: Programs should be capable of running unchanged "as-is" on a variety platforms and devices.
- Good performance: Programs should run fast enough for practical use.
- Multi-threaded: Programs should be capable of handling different processes concurrently.
Java editions
There are two main editions of Java suitable for different purposes:
- Java SE (Standard Edition): used for general purpose applications including those with a desktop user interface.
- Java EE (Enterprise Edition): an extended edition used for large-scale enterprise applications, typically using a browser-based front-end.
Java toolkits
It is also necessary to distinguish between the Java Development Kit (JDK) and the Java Runtime Environment (JRE):
- The Java Development Kit (JDK) is a set of tools used to write Java programs.
- The Java Runtime Environment (JRE) needs to be installed if you just need to run a program that has been written in Java. Once installed, this creates a Java Virtual Machine (JVM) which is the component that runs any Java program on your platform, including those written on a different platform. Common platforms are Windows, Linux and Macintosh, and a JRE is also available on some other platforms too.
Do not confuse Java with JavaScript: they are two entirely separate languages which have different uses, although there is some degree of similarity in their syntax. Java is generally more comparable to C# and C++ than to JavaScript.
The next lesson describes what object-oriented programming is.
Comments