Java-Technologie

Werbung
NSTU
Pawlow Konstantin
AM-511 Automatik und Rechentechnik
2006
JAVA
Write once, run anywhere
(deutsch: „Einmal schreiben, überall ausführen“)
java.sun.com sun.com javagu.ru www.borland.com/de
Java-Technologie
Die Java-Technologie wurde von Sun Microsystems
entwickelt.
Die Java-Technologie besteht aus den folgenden
Komponenten:
– Programmiersprache Java
– Java-Plattform
Auf diesen Komponenten aufbauend gibt es folgende
Technologien:
–
–
–
–
Java 2 Platform Standard Edition
Java 2 Platform Enterprise Edition
Java 2 Platform Micro Edition
Java Card
Inhaltsverzeichnis
 Grundkonzepte der Sprache
Objektorientierung
Reflection
Write Once, Run Anywhere
Modulare Ausführung auf fernen Computern
 Merkmale der Sprache
 Entstehung und Weiterentwicklung der Sprache
Entstehung
Sun und JCP (Java Community Process)
 Entwicklungsumgebungen
Grundkonzepte der Sprache
 Objektorientierte Programmiersprache
 Gleiche Programme auf unterschiedlichen
Computersystemen
 Eingebaute Unterstützung für die Verwendung
von Computernetzen
 Code aus entfernten Quellen sicher ausführen
können
Das Sicherheitskonzept von Java

drei Schichten besteht:
1. dem Code-Verifier, der sicherstellt, dass die VM
keinen ungültigen Bytecode ausführen kann
2. den Class-Loadern, die die sichere Zuführung von
Klasseninformationen zur JVM steuern
3. den Security-Managern die sicherstellen, dass nur
Zugriff auf Programmobjekte erlaubt wird, für die
entsprechende Rechte vorhanden sind
Grundkonzepte der Sprache
 Die erfolgreichen Aspekte bereits verbreiteter
objektorientierter Programmiersprachen sollen
Java-Programmierer zur Verfügung stehen
Objektorientierung
 Die Sprache Java gehört zu den
objektorientierten Programmiersprachen
 Java ist nicht vollständig objektorientiert: Die
Grunddatentypen (int, boolean usw.) und
Literale sind keine Objekte
Reflection
 Java bietet eine Reflection-API als Bestandteil
der Laufzeitumgebung
Write Once, Run Anywhere
 Java funktioniert nach dem Konzept Write
Once, Run Anywhere
 Das bedeutet, dass man ein Programm, das in
Java programmiert wurde, theoretisch nur
einmal zu kompilieren braucht und es auf allen
anderen Systemen läuft, die eine JavaLaufzeitumgebung (Java Runtime Environment
bzw. JRE) besitzen
Write Once, Run Anywhere
Der Bytecode funktioniert also als
Zwischencode, zwischen Programmiersprache
und Maschinensprache.
So ist das Javaprogramm nicht an eine
bestimmte Maschine gebunden.
Write Once, Run Anywhere
 Das Java Runtime Environment existiert für weit
verbreitete Betriebssysteme wie Microsoft
Windows, Linux, Solaris, Mac OS X, AIX und
viele andere
Write Once, Run Anywhere
 Daneben gibt es eine JRE nicht nur für Serverund Desktop-Betriebssysteme, sondern auch für
viele Embedded Systeme wie Mobiltelefone,
PDAs, sowie Smartcards und andere technische
Plattformen, wie Auto und TV.
Write Once, Run Anywhere
 Es gibt aber auch Compiler, die Java direkt in
Maschinencode übersetzen (Native Compiler)
Modulare Ausführung auf fernen
Computern
 Java bietet die Möglichkeit, Klassen zu
schreiben, die in unterschiedlichen
Ausführungsumgebungen ablaufen.
 Beispielsweise lassen sich Applets in
Webbrowsern, die Java unterstützen, ausführen.
 Beispiele für Java-Ausführungsumgebungen
sind Applets, Servlets, Portlets, Midlets, Xlets,
Translets, und Enterprise Java Beans.
Merkmale der Sprache
 Der Objektzugriff in Java ist über Referenzen
genannte Zeiger implementiert.
So genannte Zeigerarithmetik ist mit der Sprache
also ausgeschlossen. Per Design können so
Fehler, welche häufig in anderen
Programmiersprachen auftreten, von vornherein
ausgeschlossen werden.
Merkmale der Sprache
 Zusammengehörige Klassen werden in Paketen
(englisch packages) zusammengefasst. Diese
Pakete ermöglichen die Einschränkung der
Sichtbarkeit von Klassen, eine Strukturierung
von größeren Projekten sowie eine Trennung
des Namensraums für verschiedene Entwickler.
Merkmale der Sprache
 Unterstützt die Sprache Threads (nebenläufig
ablaufende Programmteile) und Ausnahmen
(englisch exception) und Java beinhaltet auch
eine automatische Speicherbereinigung
(englisch garbage collector), die nicht (mehr)
referenzierte Objekte aus dem Speicher entfernt.
Merkmale der Sprache
 Zu Java gehört eine umfangreiche
Klassenbibliothek.
 Mit Java 1.2 wurden die Java Foundation
Classes (JFC) eingeführt, die unter anderem
Swing bereitstellen, das zur Erzeugung
plattformunabhängiger grafischer
Benutzerschnittstellen (GUI) dient und auf AWT
basiert.
Entstehung und
Weiterentwicklung der Sprache
 Entstehung
 Geschichte Javas
 Sun и JCP
(JCP – Java Community Process)
Geschichte Javas
 Die Urversion von Java - auch Oak genannt wurde in einem Zeitraum von 18 Monaten vom
Frühjahr 1991 bis Sommer 1992 unter dem
Projektnamen The Green Project
Geschichte Javas
 The Green Project von Patrick Naughton, Mike
Sheridan, James Gosling und Bill Joy sowie
neun weiteren Entwicklern im Auftrag des USamerikanischen Computerherstellers Sun
Microsystems entwickelt.
Patrick Naughton
James Gosling
Bill Joy
Geschichte Javas
 Die Entwicklung fand in einem unauffälligen
Bürogebäude in der Sand Hill Road in Menlo
Park statt.
Geschichte Javas
 Im Sommer 1992 schließlich war die erste Oakbasierte Anwendung fertig gestellt – “an
interactive, handheld home-entertainment
device controller with an animated touchscreen
user interface”. Diese Technologiedemonstration
einer Touchscreen-basierten Gerätesteuerung
mit animierter Benutzeroberfläche (GUI) hatte
den Namen *7 (StarSeven).
Geschichte Javas
 Hinterzimmer-Projekt „The Green Project“
entstand die Firma „FirstPerson“. Aus dem Büro
wurde ein Bürohaus in der 100 Hamilton Avenue
in Palo Alto.
Sun и JCP
Der JCP wurde 1998 von Sun Microsystems
ins Leben gerufen
Die grossen Unternehmen vervollkommnend
Java.
Entwicklungsumgebungen
 Die bekanntesten Open-SourceUmgebungen sind Eclipse und NetBeans
Eclipse
NetBeans
NetBeans
Der Manager
des Projektes
Arbeitsraum
Eigenschaftenfenster
Das Basisfenster
Eclipse Platform
Der Forscher
des Paketes
Arbeitsraum
Das Basisfenster
X-CODE aus Mac OS X
Groups & Files
Der Editor
Unter den kommerziellen
Entwicklungsumgebungen
 Netbeans basierende Sun ONE Studio von
Sun
 IntelliJ IDEA von JetBrains
 JBuilder von Borland
Links & Web
http://www.sun.de/
http://java.sun.com/
http://de.wikipedia.org/
http://www.apple.com/de/macosx/
http://javagu.ru/
http://www.borland.com/de
http://www.falkhausen.de/download/diagram/img/
http://www-128.ibm.com/developerworks/java/library/
Anhang.Bytecode
Anhang.JFC
NSTU
Pawlow Konstantin
AM-511 Automatik und Rechentechnik
2006
Herunterladen