1.4 Java Abgrenzung, Begriffsbestimmung

Java und andere Initiativen

Java ist:

Java in der Softwareentwicklung

  • Markenzeichen (Trademark) der Firma Oracle (ehemals Sun Microsystems)
    • nur von Oracle zertifizierte und/oder lizensierte Produkte dürfen das Warenzeichen führen
  • Programmiersprache
    • C/C++ ähnliche Syntax
    • 1995 veröffentlicht
    • konservative Weiterentwicklung der Sprache um Fragmentierung zu vermeiden
  • standardisierter Bytecode
    • wird aus Javaquellcode generiert
    • plattform- und betriebssystemunabhängig
  • Virtuelle Maschine (VM: Laufzeitumgebung)
    • führt (neutralen) Bytecode aus
    • verfügbar von unterschiedlichen Anbietern für viele Betriebsysteme
  • Laufzeitbibliotheken (Java API)
    • standardisiert
      • optionale, sowie verpflichtende Komponenten
    • reichhaltiger Funktionsvorrat der alle wesentlichen Funktionen eines Betriebssystem portabel für die Anwendung zur Verfügung stellt
      • Graphik
      • Netzwerkommunikation
      • Mathematik
      • Verschlüsselung
      • Dateizugriff
      • Datenbankzugriff
      • etc.
  • Java "Editionen" (Editions)
    • Funktionalitätsbündel für unterschiedliche Anwendungszwecke
    • gleiche Sprache, unterschiedliche VM, unterschiedlicher Bibliotheksumfang
    • z.Zt. existierende Editionen
      • SE: Standard Edition (Gegenstand des Kurses!)
        • Desktopanwendungen, fundament für Serveranwendungen, zunehmend auch Smartphones
      • EE: "Enterprise Edition"
        • Middleware für Java-Applikationsserver
        • Fokus: Mehrbenutzeranwendungen, Webfrontends, komplexe betriebswirtschaftliche Anwendungen
      • ME: "Micro Edition"
        • Mobile Endgeräte: Mobiltelefone, PDAs, Smartphone
        • Fokus: Animation auf Mobiltelefonen, Nutzung der Mobiltelefoninfrastruktur
        • unterschideliche "Profile und Konfigurationen" für unterschiedliche Geräteklassen
      • JavaCard
        • Javalaufzeitumgebung für intelligente EC und Kreditkarten mit Chip
      • weitere Varianten
        • JavaFX : Laufzeitumgebung für multimediale Benutzeroberflächen
          • Ist Seit Java 7.0 update 6 Teil der Javalaufzeitumgebung
        • Randbemerkung: JavaScript: Netscape führte im Frühjahr 1996 die Browserscriptsprache JavaScript ein. Netscape war zum damaligen Zeitpunkt ein sehr früher Kooperationspartner von Sun Microsystems, der als einer der ersten Partner eine Portierung von Java im Browser auslieferte. Sun Microsystems gewährte Netscape zum damaligen Zeitpunkt das Recht das Markenzeichen "Javascript" zu verwenden. Die Marke gehört noch heute Oracle (als Nachfolger von Sun Microsystems)
          • Interessant: JavaScript hat technologisch gesehen nichts mit der Programmiersprache Java gemein.

1.4.1 Java Standard Edition (SE)

Standalone Java-Programme

Java-Programme können lokal wie ein gewöhnliches Programm ausgeführt werden.

Java-Applikationsserver die selbst keine direkte Benutzeroberfläche haben und im Hintergrund laufen sind technisch gesehen Programme der Java Standardedition.

Java-Programme die selbst eine graphische Benutzerschnittstelle mit Hilfe der Java Swing/AWT Bibliotheken exponieren nennt man auch "Fat" oder "Rich Clients".

Das Starten eines Javaprogramms geschieht mit dem Kommando java welches die Javalaufzeitumgebung startet:

$ java HelloWorld
Hello World!

Softwarepakte der Java Standard Edition

Hier wird der Stand der Entwicklung basierend auf Java 7 update 25 dokumentiert.

JRE: Java Runtime Environment

Dieses Softwarebündel enthält alle Komponenten die man zum Ausführen von Javaprogrammen benötigt. Seit Java 7u21 kann man sie in zwei Varianten installieren

JRE (für Desktops): Download

  • Javalaufzeitumgebung
  • Plugins und Bibliotheken für Browsereinbettung
  • Sicherheitskonsole
  • Kommentar: Dieses Javapaket sollten Sie installiert haben um die Applets des Kurses auf dieser Webseite zusehen

JRE for Server: Download

  • Javalaufzeitumgebung
  • Zusatzprogramme zum Monitoren von Serveranwendungen
  • das Paket enthält keine Browserplugins
  • Kommentar: Dieses Paket wird nicht für den Kurs benötigt

JDK: Java Development Kit (Download)

Dieses Softwarepaket wird für den Kurs verwendet. Es enhält

  • Javalaufzeitumgebung
  • Übersetzer
  • Analyse- und Testprogrogramme
  • Programme zum Erstellen von Javadokumentation

Hinweis: Sie müssen für den Kurs JRE und JDK installieren. Die Softwarepakete werden an unterschiedlichen Stellen installiert.

 

1.4.2 Java Enterprise Edition

 Die Java Enterprise Edition (JEE) ist eine Applikationservertechnologie die auf der Java Standard Edition aufbaut.

JEE Applikaktionsserver betreiben in der Regel Mehrbenutzeranwendungen die Webseiten für die Benutzer generieren. Die Enterprise Edition wird typischerweise in zwei Varianten eingesetzt.

  • Webcontainer: Um die Klasse Servlet entwickelte Technologien zum Erzeugen von html Seiten
  • EJB Container (Enterprise Java Beans): Ein auf EJB Klassen basierendes Framework um Anwendungslogik zu implementieren die unabhängig vom Benutzer ist (z. Bsp. Datenbank, Persistenz, Messaging, Sperren etc.)

Hinweis: Java EE ist nicht Gegenstand dieses Kurses.