ºÝºÝߣ

ºÝºÝߣShare a Scribd company logo
Java Overview
and
Architecture
Prepared By: Chay Weei Jye
Email: wjchay88@yahoo.com
Document Creation Date: 12 June 2019
Last Update: 22 June 2019
Author: wjchay88@yahoo.com
Objectives
and
Prerequisite
2
• To understand history of Java in brief.
• To understand the benefits of using Java.
• To understand the architecture behind
Java.
• To understand how Java source codes
are compiled and executed in brief.
Objectives:
• None
Prerequisites:
Author: wjchay88@yahoo.com
Introduction
Java was created by Sun
Microsystems Inc in 1991, later
acquired by Oracle Corporation.
Java was originally developed by
James Gosling and Patrick
Naughton.
There are more than 3 billion (and
counting) devices running Java.
Author: wjchay88@yahoo.com
Why Java
• Java works on different platforms (Windows, Mac,
Linux, Raspberry Pi, Android, etc.)
• This means your codes can be deployed and
run on many platforms (platform independent)
• The official language for Android is Java
• It is one of the most popular programming
languages in the world
• It is easy to learn and simple to use
• It makes you think like a programmer
• It is open-source and free
• It is secure, fast and powerful
• It has a huge community support (tens of millions of
developers)
• This means not just Java development support,
but there are thousands of third-party open
source products that can be freely used for
your Java projects
Author: wjchay88@yahoo.com
Why Java is for
you?
• 10 Most in demand Programming
Languages (based on job postings):
• https://www.techrepublic.com/arti
cle/the-10-most-in-demand-
programming-languages-of-2018/
• No 1: Java – 30% job postings
• No 2: Javascript – 26% job postings
• 8 Most in demand programming
languages 2018 (based on GitHub
usage)
• https://technostacks.com/blog/top
-programming-languages
• No 1: Python
• No 2: Java
5
Author: wjchay88@yahoo.com
Programming Language used in Popular
Websites (Wikipedia – 20 June 2019)
• https://en.wikipedia.org/wiki/Programming_languages_used_in_most_popular_website
6
Author: wjchay88@yahoo.com
Java Terminology
• Java Virtual Machine (JVM)
• The code execution component
• Translates bytecode into native machine code which
machines can execute
• Java Runtime Environment (JRE)
• Includes the JVM implementation
• Also bundles standard libraries (jars) and files that the JVM
uses at runtime
• Java Development Kit (JDK)
• The software development environment used to develop
Java applications
• Includes JRE and development tools
• 3 types of JDKs distributed by Oracle
• Standard Edition (JSE) Java Platform
• Enterprise Edition (JEE) Java Platform
• Micro Edition (JME) Java Platform
JDK
Appletviewer, apt, extcheck, javadoc,
jar, javac, javaws, keytool, jarsigner,
policytool, xjc, etc.
Development Tools
JRE
Memory model, garbage
collector, execution engine, etc.
DLL files, Code libraries,
extension files, security files,
applets support classes, TT Font
files, etc.
JVM
Libraries
Author: wjchay88@yahoo.com
Write Once Run Everywhere
Compiler
(javac)
Source code: *.java
Byte code
(.class)
JVM/Interpreter
for Windows
JVM/Interpreter
for Mac
JVM/Interpreter
for Linux
Distribution flow:
1. The same source code is
compiled to byte code files
(.class)  Write Once.
2. Byte code files are distributed to
various platforms (OS).
3. Each OS will have its own specific
JVM and interpreter to convert
byte codes to machine codes
when executed.  Run
Everywhere.

More Related Content

Java overview and architecture

  • 1. Java Overview and Architecture Prepared By: Chay Weei Jye Email: wjchay88@yahoo.com Document Creation Date: 12 June 2019 Last Update: 22 June 2019
  • 2. Author: wjchay88@yahoo.com Objectives and Prerequisite 2 • To understand history of Java in brief. • To understand the benefits of using Java. • To understand the architecture behind Java. • To understand how Java source codes are compiled and executed in brief. Objectives: • None Prerequisites:
  • 3. Author: wjchay88@yahoo.com Introduction Java was created by Sun Microsystems Inc in 1991, later acquired by Oracle Corporation. Java was originally developed by James Gosling and Patrick Naughton. There are more than 3 billion (and counting) devices running Java.
  • 4. Author: wjchay88@yahoo.com Why Java • Java works on different platforms (Windows, Mac, Linux, Raspberry Pi, Android, etc.) • This means your codes can be deployed and run on many platforms (platform independent) • The official language for Android is Java • It is one of the most popular programming languages in the world • It is easy to learn and simple to use • It makes you think like a programmer • It is open-source and free • It is secure, fast and powerful • It has a huge community support (tens of millions of developers) • This means not just Java development support, but there are thousands of third-party open source products that can be freely used for your Java projects
  • 5. Author: wjchay88@yahoo.com Why Java is for you? • 10 Most in demand Programming Languages (based on job postings): • https://www.techrepublic.com/arti cle/the-10-most-in-demand- programming-languages-of-2018/ • No 1: Java – 30% job postings • No 2: Javascript – 26% job postings • 8 Most in demand programming languages 2018 (based on GitHub usage) • https://technostacks.com/blog/top -programming-languages • No 1: Python • No 2: Java 5
  • 6. Author: wjchay88@yahoo.com Programming Language used in Popular Websites (Wikipedia – 20 June 2019) • https://en.wikipedia.org/wiki/Programming_languages_used_in_most_popular_website 6
  • 7. Author: wjchay88@yahoo.com Java Terminology • Java Virtual Machine (JVM) • The code execution component • Translates bytecode into native machine code which machines can execute • Java Runtime Environment (JRE) • Includes the JVM implementation • Also bundles standard libraries (jars) and files that the JVM uses at runtime • Java Development Kit (JDK) • The software development environment used to develop Java applications • Includes JRE and development tools • 3 types of JDKs distributed by Oracle • Standard Edition (JSE) Java Platform • Enterprise Edition (JEE) Java Platform • Micro Edition (JME) Java Platform JDK Appletviewer, apt, extcheck, javadoc, jar, javac, javaws, keytool, jarsigner, policytool, xjc, etc. Development Tools JRE Memory model, garbage collector, execution engine, etc. DLL files, Code libraries, extension files, security files, applets support classes, TT Font files, etc. JVM Libraries
  • 8. Author: wjchay88@yahoo.com Write Once Run Everywhere Compiler (javac) Source code: *.java Byte code (.class) JVM/Interpreter for Windows JVM/Interpreter for Mac JVM/Interpreter for Linux Distribution flow: 1. The same source code is compiled to byte code files (.class)  Write Once. 2. Byte code files are distributed to various platforms (OS). 3. Each OS will have its own specific JVM and interpreter to convert byte codes to machine codes when executed.  Run Everywhere.