Glossary

 

Java programming language

Java is an object-oriented programming language developed by James Gosling and colleagues at Sun Microsystems in the early 1990s. Unlike conventional languages which are generally designed either to be compiled to native (machine) code, or to be interpreted from source code at runtime, Java is intended to be compiled to a bytecode (though it can be compiled to native code with gcj), which is then run (generally using JIT compilation) by a Java virtual machine.
The language itself borrows much syntax from C and C++ but has a simpler object model and fewer low-level facilities.
Java is not related to JavaScript, though they have similar names and share a C-like syntax.

Source: Wikipedia

 

GNU Compiler for Java

The GNU Compiler for Java (GCJ) is a free software compiler for the Java programming language that is part of the GNU Compiler Collection. It can compile Java source code to either Java Virtual Machine bytecode, or directly to machine code for any of a number of CPU architectures. It can also compile class files containing bytecode or entire JARs containing such files into machine code. Almost all of the runtime libraries used by GCJ come from the GNU Classpath project.

Source: Wikipedia

 

GNU Classpath

GNU Classpath is a project aiming to create a free implementation of the standard class library for the Java programming language. It is a part of the Free Software Foundation’s GNU project. Despite the massive size of the library to be created, the majority of the task is already done, including Swing, CORBA, and other major parts. The Classpath developers have implemented almost all of the classes from J2SE 1.4 and 5.0, and Classpath can thus be used to run popular Java-based software such as Azureus and Eclipse.

Source: Wikipedia

 

MinGW

MinGW or Mingw32 (Minimalist GNU for Windows) is a software port of the GNU toolchain to the Win32 platform. MinGW includes a set of Windows header files (W32API) for native Win32 development. It was originally a fork of Cygwin (version 1.3.3).

Source: Wikipedia

 

MSYS

MinGW is often used together with MSYS (Minimal SYStem), another package based on Cygwin that provides a lightweight shell environment supporting enough POSIX functionality to enable configure scripts to run.
It is also possible to use MSYS by itself as a replacement for the built-in Windows shell.

Source: Wikipedia

 

Eclipse

Eclipse is a free software / open source platform-independent software framework for delivering what the project calls “rich-client applications”, as opposed to “thin client” browser-based applications. So far this framework has typically been used to develop IDEs (Integrated Development Environments), such as the Java IDE called Java Development Toolkit (JDT) and compiler that comes as part of Eclipse (and which are also used to develop Eclipse itself). However, it can be used for other types of client application as well. See the BitTorrent client Azureus for example.

Source: Wikipedia

 

Standard Widget Toolkit

The Standard Widget Toolkit (SWT) is a graphical widget toolkit for the Java platform. It is alternative to the AWT and Swing Java GUI toolkits provided by Sun Microsystems as part of the Java standard.
SWT is written in Java. To display GUI elements, the SWT implementation accesses the native GUI libraries of the operating system using JNI (Java Native Interface) in a manner that is similar to those programs written using operating system-specific APIs. Programs that call SWT are portable, but the implementation of the toolkit, despite the fact that it is written in Java, is unique for each platform.

Source: Wikipedia

 

Java virtual machine

A Java Virtual Machine (JVM), originally developed by Sun Microsystems, is a virtual machine that executes Java bytecode. This code is most often generated by Java language compilers, although the JVM has also been targeted by compilers of other languages.
The JVM is a crucial component of the Java Platform. The availability of JVMs on many types of hardware and software platforms enables Java to function both as middleware and a platform in its own right. Hence the expression “Write once, run anywhere.”

Source: Wikipedia

 

Java Native Interface

The Java Native Interface (JNI) is a programming framework that allows Java code running in the Java virtual machine (VM) to call and be called by native applications (programs specific to a hardware and operating system platform) and libraries written in other languages, such as C, C++ and assembly.

Source: Wikipedia