One Cup Of Java
Prepared by Amr Salah
Monday, February 9th, 2009
We will END our CUP into 5 Doses
: Java Community Process.
: Java Characteristics.
: Java Terminology.
: Java Platforms.
: Java Frameworks.
Name : James Gosling .
Born : May 19, 1955 (age 53) .
Residence : United States .
Alma mater : Carnegie Mellon University.
Occupation : Computer Scientist .
Employer : Sun Microsystems .
Known for : Father of Java .
“The Father of Java dismissed Microsoft's C# as having had potential, but no
longer: "We were afraid they were going to do something really creative
- but they're hopelessly focused on one platform."
We have a balancing act: we need the simplicity but we also need
1st Does: Java Community and Open Source
(JCP) – is a formalized process which allows interested
parties to get involved in the definition of future versions and features of the Java
(JSR) – the formal documents that describe proposed
specifications and technologies for adding to the Java platform
(Open Source) – In May 2007, in compliance with the
specifications of the java community process, Sun made available most of their
java technologies as free software under the GNU GPL ( General Public License )
that developed by Richard Stallman. In 1989, the first program-independent GNU
General Public License (GPL) was released .
2nd Does : Java Characteristics
Automatic Memory Management
- 2nd Does.1: Cross Platform
Platform : describes some sort of hardware architecture or software
framework , that allows software to run.
Typical platforms include a computer's architecture, operating
system, programming languages and related runtime libraries or graphical user
Different Architecture .
Different Operating System.
Java is WORA ( Write Once Run Anywhere ) .
3rd Does: Java Terminology
(JVM) – An abstract machine architecture
specified by the Java Virtual Machine Specification .
(JRE) – A runtime environment which
implements Java Virtual Machine, and provides all class libraries
and other facilities (such as JNI) necessary to execute Java
programs. This is the software on your computer that actually runs
(JDK) – The basic tools necessary to
compile, document, and package Java programs (javac, javadoc, and
jar, respectively). The JDK includes a complete JRE.
4th Does.1: Java SE
• General Purpose Application .
• Runs on Desktop, Laptops .
• Includes a set of libraries for common programming needs
• Network .
• Database .
• Etc .
4th Does.2: Java ME
• Application for limited Device .
• Run on
– Mobile Devices such as cell phone .
– PDAs .
4th Does.3: Java EE
• Enterprise Software .
• Focus on Business Logic .
• Multitiered Architectures :
– Client Tier .
– Web Tier.
– Business Tier .
– EIS Tier .
4th Does.3: (Client Tier )
Runs On Client Machines .
Web Application ( Thick client )
• Dynamic web pages generated by web component ( JSP & Servest ).
Application Client ( Thick Client )
• provides a way for users to handle tasks that require a richer user
interface than can be provided by a markup language ( GUI, =>
4th Does.3: (Web Tier)
Run on Web Server ( a part from J2EE Server ) to generate
Dynamic Content .
• Java Classes that process request and construct response .
JSP ( Java Server Pages )
• Text-based Documents that executes as Servlets , but allow more natural
JSF ( Java Server Faces )
• Provide UI component framework for Web Application above JSP & Servlets .
4th Does.3: (Business Tier)
Runs on EJB Server ( as a part from J2EE server ) to expose
Business Logic to third party applications.
2- EJB Technology
2.1- MSG-Driven Beans
• Allow Business Component to send and receive Massage asynchronously
2.2- Session Beans
• Represent a transient conversational with Client .
4th Does.3: (EIS Tier)
Enterprise Information System
EIS SW and Enterprise Infrastructure
• Handles Enterprise information System Software and Include Enterprise
Infrastructure System .
Enterprise Infrastructure System likes :
• Database Systems .
• Legacy Information Systems .
4th Does.3: (AS)
AS stands for “Application Server “ .
Application Server is
• In an n-tier architecture, is a server that hosts an API to expose business
logic and business processes for use by third-party applications .
Examples of Application Servers
• Redhat ( JBOSS )
• IBM ( WebSphere )
• Oracle ( Oracle OC4G )
• SUN ( GlassFish )