4. Agenda
1- JAVA , What ?!!
2- JAVA , Why ?!!
3- JAVA , When ?!!
4- JAVA slow ?!!
5- JAVA editions ...
6- JAVA , How ?!!
7- let us go …
5. • James Gosling
- Gosling left IBM in 1984 to join
Sun, first he chose C++. But he
soon gave up on C++ .
- Then he started to modify C++ .
- Then created JAVA .
6. 1- JAVA , What ?!!
* - JAVA is a computer programming language created by Sun
Microsystems which become apart of oracle company .
7. 1- JAVA , What ?!!
* - JAVA is more than programming language it is
technology .
8. 2- JAVA , Why ?!!
1- Similar to C++ so it is familiar to commercial programmers.
2- OOPlanguage .
3- platform independent .
4- Has garbage collector .
5- multithreaded .
6- Dynamic .
7- more security than C&C++ .
8- JAVA is technology .
9- open source .
9. 2- JAVA , Why ?!!
1- Similar to C++ so it is familiar to commercial
programmers.
17. 2- JAVA , Why ?!!
7- more security than C&C++ .
18. High security
* - To write java program :
1- write in a Text Editor .
2- compiler creates bytecode .
3- “ class loader “ places the ( .class file ) in memory .
4- “ byetcode verifer “ makes sure the code adhere to the rules
of java security .
5- The “JVM” interpreter reads bytecode and makes platform
native code .
19. Primary
Memory
.
.
.
.
.
.
Disk
Disk
Disk
Editor
Compiler
Class Loader
Program is created in an
editor and stored on disk
in a file ending with
.java.
Compiler creates
bytecodes and stores
them on disk in a file
ending with .class.
Class loader
reads .class
files containing
bytecodes from
disk and puts
those bytecodes
in memory.
Phase 1
Phase 2
Phase 3
Primary
Memory
.
.
.
.
.
.
Bytecode Verifier
Bytecode verifier
confirms that all
bytecodes are
valid and do not
violate Java’s
security
restrictions.
Phase 4
Primary
Memory
.
.
.
.
.
.
Interpreter
Interpreter reads
bytecodes and
translates them into a
language that the
computer can
understand, possibly
storing data values as
the program
executes.
Phase 5
24. 4- JAVA , slow !!!
* - JIT compiler .
* - JIT actually takes your byte code and translated it into native
code
This translated code will run just as fast as any C++ program .
25. 5- JAVA Editions …
* - when java was introduced it primaly consists of two
components
i- programming language specification .
ii- JRE specification .
* - They described the JVM .
26. 5- JAVA Editions …
*- when java evolved sun added new specifications and techs that
made java more than a programming language .
* For example *
- Servlets and JSP provided to create dynamic web pages .
- EJB (enterprise java beans) provided for developing distributed
applications .
And more adds which make java more than programming language .
- RMI .
27. 5- JAVA Editions …
*- Sun grouped java editions into
1- JAVA SE .
2- JAVA EE .
3- JAVA ME .