Title: Programmentwicklung in Java
1Programmentwicklung in Java
Foliensatz von A. Weber zur Vorlesung Informatik
I, Bonn, 2002/03 Überarbeitet von W. Küchlin zu
Informatik I, Tübingen 2003/04
2Allgemeines zu der Programmiersprache Java
- Java ist eine objektorientierte
Programmiersprache in der Tradition von C und C - Die Java-Syntax lehnt sich an C an, nimmt aber
einige deutliche Bereinigungen vor - z. B. Abwesenheit von goto und Zeigern
- Die Erweiterung um Objekte geschieht ähnlich wie
bei C - Allerdings gibt es doch einige Unterschiede
- In erster Näherung könnte man sagen, dass Java
aus der riesigen Vielfalt der C-Konstrukte eine
sinnvolle Auswahl trifft und gleichzeitig einiges
umstellt und bereinigt
3Java Bibliotheken
- Zu Java gehört außerdem eine Sammlung von
standardisierten Bibliotheken, die häufige
Programmieraufgaben stark erleichtern - Beipiele solcher Bibliotheken sind
- java.applet für Programme, die in Web-Browsern
laufen sollen - java.awt für das Erzeugen graphischer
Benutzeroberflächen - java.math für Arithmetik auf beliebig langen
Zahlen (wichtig z. B. für die Kryptographie), - java.net zum Betreiben von Verbindungen über das
Internet - java.rmi zum Aufrufen von Methoden auf entfernten
Rechnern - ...
4Home Page von Java
- Java wurde bei der Firma SUN Microsystems
entwickelt - Von James Gosling
- Ursprünglich für die Programmierung von in
Haushaltselektronik eingebetteten Prozessoren - Die zentrale Internet Site der Firma SUN zum
Thema Java ist - http//java.sun.com
- Besonders empfehlenswert (und sehr empfohlen zur
Ergänzung des Selbststudiums) - Das offizielle Java-Tutorium
- http//java.sun.com/docs/books/tutorial/
- Die offizielle Sprachdefinition
- Über http//java.sun.com/developer/infodocs
5Das Buch der Entwickler
- Arnold, K., Gosling, J. und Holmes, D. (2000).
The Java Programming Language. Addison-Wesley.
Dritte Auflage.
- Die originale Referenz, die auch einen kompakten
Überblick und ein Nachschlagen während des
Programmierens ermöglicht - Setzt aber oft schon das Standardwissen der
Informatik voraus - Das wir in dieser Vorlesung erarbeiten wollen ?
6Weitere Literaturempfehlungen
- Eine weitere Literaturempfehlung
- Auch hier wieder über die Informatik I hinaus
7Umgebungen zur Entwicklung von Programmen
- Es gibt 2 Wege der Programm-Entwicklung mit Java
- Von der Kommandozeile (z.B. mit dem Java SDK von
SUN) - Mit einer integrierten Entwicklungsumgebung (IDE)
(z.B. eclipse, siehe www.eclipse.org) - Die Standard-Entwicklungsumgebung von SUN (zur
Zeit in Version 1.4) kann im Internet
heruntergeladen werden - http//java.sun.com/j2se/1.4/download.html
- Das Java Tutorial von Campione et al. (2001)
enthält detaillierte Anleitungen zur Installation
des SDK 1.4 auf UNIX / LINUX, Apple Macintosh und
Microsoft Windows Plattformen - Eine IDE integriert verschiedene Werkzeuge, die
sonst separat über die Eingabezeile aufgerufen
werden Design mit UML, Edit, Compile, Run, Test,
Debug, Refactor, Document, Version control - Benutzen Sie die Begleit-CD zur Vorlesung
- Hilfe können Sie auch in den Übungsgruppen
bekommen
8Zyklus der Software-Entwicklung
Edit, Compile, Debug, Document, Version Control
9Javadoc Dokumentation pop-up Fenster
Klassen- Aufbau
Programm
Konsole für Programm Ein-/Ausgabe
Dateien
10Syntax-aware editing
Syntax highlighting
11Programmentwicklung und -ausführung Editieren
- Der Quellcode eines Programms kann mit jedem
beliebigen Editor erstellt werden
Skizze von R. Manthey, Vorlesung Informatik I,
Bonn, WS 2001/2002
12Editoren
- Programme zum Schreiben und Verändern
(Editieren) von Text-Dateien heißen Editoren - Quellcode-Dateien von Java-Programmen sind
Text-Dateien - Sie könnten Ihren Lieblingseditor benutzen
- Ein mächtiges Werkzeug EMACS
- Aber auch einfachere Programme erfüllen anfangs
ihren Zweck - VI, JOE, WINEDT, ...
- Zur Not sogar NotePad (oder Word ? ohne
Formatierung speichern) - Formatting und Syntax Highlighting Automatisches
Einrücken nach Standard-Konventionen und farbiges
Hervorheben der Konstrukte (while, if, ) (z.B.
emacs, IDEs) - Syntax Aware Editing Java Syntax Checker läuft
beim Editieren mit ? falsche Syntax (z.T.
Semantik) sofort erkannt (z.B. eclipse)
13Programmentwicklung und -ausführung Compilieren
Skizze von R. Manthey, Vorlesung Informatik I,
Bonn, WS 2001/2002
14Programmentwicklung und -ausführung
Interpretieren
Skizze von R. Manthey, Vorlesung Informatik I,
Bonn, WS 2001/2002
15Programmiervorgang für Java
Skizze von R. Manthey, Vorlesung Informatik I,
Bonn, WS 2001/2002
16Platformunabhängige Compilierung für Java
Skizze von R. Manthey, Vorlesung Informatik I,
Bonn, WS 2001/2002
17Programmiervorgang für Java
Skizze von R. Manthey, Vorlesung Informatik I,
Bonn, WS 2001/2002
18Programmiervorgang für Java
Skizze von R. Manthey, Vorlesung Informatik I,
Bonn, WS 2001/2002
19Hello World-Programm
Skizze von R. Manthey, Vorlesung Informatik I,
Bonn, WS 2001/2002
20Pragmatisches zur Programmausführung in Java
Skizze von R. Manthey, Vorlesung Informatik I,
Bonn, WS 2001/2002
21Pragmatisches zur Programmausführung in Java
Skizze von R. Manthey, Vorlesung Informatik I,
Bonn, WS 2001/2002
22Pragmatisches zur Programmausführung in Java
Skizze von R. Manthey, Vorlesung Informatik I,
Bonn, WS 2001/2002
23Beispiel Benutzung von Kommandozeilenparametern
Konkatenation von Zeichenketten
24Ein Programm-Rahmen für Funktionen
Korrigierte Version nach Buch, 2. Aufl., Kap.
6.9.2, S. 151152
public class ProgramF public static int
plus(int a, int b) return (ab)
public static void main(String args) int
x5 int y6 int z, v zplus(x,y)
System.out.println(x " " y " "
z) vplus(plus(x,y),z)
System.out.println(x " " y " " z "
" v)