Java - Benutzer

Werbung
OOP und JAVA
(Vorlesung 11-13)
Modul: Programmierung B-PRG
Grundlagen der Programmierung II
Prof. Dot.-Ing. Roberto Zicari
unter Mitarbeit von N. Hoebel und C. Schefels
Professur für Datenbanken und Informationssysteme (FB 12)
27.06 / 04.07 / 11.7 2007
1
Teil 1 - Java
Grundlagen
Klassen, Attribute
Methoden
2
Java 2 - Geschichte
Ursprung:
„Green“-Project bei der Firma Sun Microsystems 1991
Entwicklung eines Systems mit folgenden Eigenschaften:
• hardwareunabhängig
• möglichst klein
Einsatzgebiet: Konsumgeräte, z.B. Umschalter für das
Kabelfernsehen
basierend auf C++ (objektorientiert) ohne dessen Schwierigkeiten
Name: zuerst OAK (Object Application Kernel), später Java
Durchbruch: Ende 1995, 1998 dann JAVA 2
3
Grundlagen der Programmierung II
DBIS - SS2007
Schlagwörter
• „Objektorientiert“
• „Einfach“
• „Verteilt“
• „Sicher“
• „Dynamisch“
• „Robust“
• „Multithreaded“
• „Interpretiert“ & „Plattformunabhängig“
4
Grundlagen der Programmierung II
DBIS - SS2007
Java 2 - Varianten
• Micro Edition (J2ME)
für eingebettete Systeme, PDAs, Smart Phones etc.
• Standard Edition (J2SE)
„normales“ JDK - Java Development Kit
• Enterprise Edition (J2EE)
EJBs, Servlets
Ab der Version Java 1.2 spricht man von Java 2!
Die zur Zeit neuste Version ist Java 1.6
und ist bekannt als Edition 6, ‘Mustang‘-Release.
Online:
Die Varianten können heruntergeladen werden unter:
http://java.sun.com
5
Grundlagen der Programmierung II
DBIS - SS2007
JDK Paket
Das JDK enthält Compiler, Interpreter, Debugger und
Klassenbibliotheken, aber keinen Editor !
Verzeichnisstruktur
\jdk
\docs
\bin
\demo
\include
\lib
\src
6
Stammverzeichnis
Dokumentation in HTML
Compiler und Tools
Beispieldateien
Dateien für native Methoden
Bibliotheksdateien
Quellcode der Bibliotheken
Grundlagen der Programmierung II
DBIS - SS2007
Plattformunabhängigkeit von Java
Erinnerung: Übliche Übersetzungsvorgänge bei Programmiersprachen
• Compiler (bei Modula-2, C usw.):
MODULE p;
VAR n,i:INTEGER;
BEGIN
FOR i:=1 TO n DO
n:=n*n;
END;
END p.
Compiler
00010110010
11001001001
00001110001
11111000001
10101010100
11001100011
11001100111
11000111001
Ausführung
Ergebnis
Ausführung
Ergebnis Nr. i
Maschinencode
Programm (Quellcode)
• Interpreter (bei Basic, Lisp usw.):
10 INPUT n$
20 FOR i=1 TO 10
30 PRINT “Hi”,n$
40 NEXT
Anweisung Nr. i
7
Interpreterer
00010110010
11001001001
Maschinencode
Grundlagen der Programmierung II
DBIS - SS2007
Plattformunabhängigkeit von Java
Vorgehensweise bei Java
(Java Virtual Machine)
Ergebnis
JavaInterpreter
(i686-CPU)
class Dreieck extends GeoObj {
double seite,hoehe,alpha;
Dreieck(double s,
double h,
double a) {
this.seite=s;
this.hoehe=h;
this.alpha=a;}
double berechneFlaeche() {
return 0.5*seite*hoehe);}
}
Java Quellcode
Java
Compiler
JavaInterpreter
(Power PC)
Java Bytecode
(plattformunabhängig)
Ergebnis
JavaInterpreter
(SPARC)
Ergebnis
8
Grundlagen der Programmierung II
DBIS - SS2007
Plattformunabhängigkeit von Java
Eigenschaften der Java Virtual Machine
• Die Virtuelle Maschine ist eine Art „Universaltranslater“.
(vgl. mit Raumschiff Enterprise)
• Der Bytecode ist der „Maschinencode“ der Virtuellen Maschine.
von der Virtuellen Maschine direkt ausführbar
• Die Virtuelle Maschine ist für alle gängigen Systeme verfügbar.
(Windows, Solaris, Linux usw.)
• Die Virtuelle Maschine ist z.B. auch in WWW-Browsern integriert.
Einsatz von sog. „Applets“ möglich.
9
Grundlagen der Programmierung II
DBIS - SS2007
Arten von Java-Programmen
Applikationen:
• „normale“ Programme (vergleichbar mit anderen Sprachen wie Modula-2, C)
• eigenständig und ohne Sicherheitseinschränkungen
• Eine auszuführende Klasse muss eine main-Methode enthalten
• Aufruf durch den Java-Interpreter java
Applets:
• Java-Programme für den Einsatz in einem WWW-Browser
• Einbettung in eine HTML-Seite durch das <applet>- oder das <object>-Tag
• nicht eigenständig
• keine main-Methode erforderlich; spezielle Schnittstelle
• Sandbox-Prinzip / Sicherheitseinschränkungen
• JRE (Java Runtime Environment)
Server-Anwendungen:
• Servlets (Java Server Pages), Enterprise Java Beans
10
Grundlagen der Programmierung II
DBIS - SS2007
Dateinamen (Endung)
• Quellcode auf *.java
• Compilierter Code auf *.class
• case sensitive
Java unterscheidet zwischen Groß- und
Kleinschreibung (auch im Quellcode)!
11
Grundlagen der Programmierung II
DBIS - SS2007
Applikationen - Entwicklungsprozess
Erster Schritt: Erstellen einer Klasse Hello (in einem Editor)
mit dem Namen „Hello.java“
class Hello {
public static void main(String args[]) {
System.out.println(“Hello Students!”);
}
}
Zweiter Schritt: Compilieren des Quellcodes
Aufruf: „javac Hello.java“
Ergebnis: autom. Erzeugen des Bytecodes „Hello.class“
Dritter Schritt: Evtl. Ausführen des Programms
Aufruf: „java Hello“ (Ausgeführt wird immer die main-Methode!)
Ausgabe: „Hello Students!“
12
Grundlagen der Programmierung II
DBIS - SS2007
Entwicklungsprozess
Problem, die auftreten könnten beim Compilieren
• die Umgebungsvariablen PATH und CLASSPATH müssen gesetzt
werden. Z.B. durch
path=%path%;c:\jdk\bin
set CLASSPATH=c:\jdk\lib
– Win95/98 in der Datei autoexec.bat
– WinNT in der Systemsteuerung -> System -> Umgebung
– WinXP in der Systemsteuerung -> System -> Erweitert
-> Umgebungsvariablen
- Linux-Bash: export=$PATH:/usr/share/jdk
13
Grundlagen der Programmierung II
DBIS - SS2007
Entwicklungsprozess
• bei der Verwendung von Paketen
(package) muß der Compiler und der
Interpreter über dem Verzeichnis
aufgerufen werden.
c:\javacode> javac c:\javacode\paket1\datei.java
c:\javacode> java paket1.datei
das Paket (=Verzeichnis) ist hier paket1.
14
Grundlagen der Programmierung II
DBIS - SS2007
Programmstruktur:
Klassen, Methoden und Variablen
class ClassName {
type variablenName = anfangswert ;
rückgabeType methodenName(type parameter1, …){
}
}
Ein erstes Beispiel:
class Student {
int semester;
int getSemester() {
return semester;
}
15
Grundlagen der Programmierung II
DBIS - SS2007
Klassen, Methoden und Variablen
Objekt student1 erzeugen:
Student student1 = new Student();
Methode aufrufen und Rückgabewert speichern:
int semanzahl = student1.getSemester();
Konstruktor:
Student() { … }
Student(int semester) { … }
16
Grundlagen der Programmierung II
DBIS - SS2007
Applets
Beispiel:
package simpleapplet;
import java.awt.Graphics;
class HelloWorld extends java.applet.Applet {
public void paint (Graphics g) {
g.drawString(“Hallo Welt!”, 10, 10);
}
}
17
Grundlagen der Programmierung II
DBIS - SS2007
Einbindung des Applet in HTML
<html>
<body>
<applet
codebase = "."
code
= "simpleapplet.HelloWorld.class"
width
= "400"
height
= "300"
>
</applet>
</body>
</html>
18
Grundlagen der Programmierung II
DBIS - SS2007
Ausführen des Applets
19
Grundlagen der Programmierung II
DBIS - SS2007
Java Entwicklungsumgebungen
Eine Entwicklungsumgebung (Integrated Development
Environment – IDE) hilft dem Entwickler beim Erstellen
und Debuggen von Programmen.
Beispiele für Java Entwicklungsumgebungen:
• Web Sphere von IBM (basiert auf Eclipse)
• JBuilder von Borland
• Sun ONE Studio von Sun Microsystems (basiert auf
NetBeans)
• ... und viele mehr!
20
Grundlagen der Programmierung II
DBIS - SS2007
OpenSource: Eclipse 3.1
21
Grundlagen der Programmierung II
DBIS - SS2007
Eclipse
• Eclipse 3.x unter: www.eclipse.org
• PlugIn Omondo für UML www.omondo.de
„Eclipse UML free Edition“ !!!
22
Grundlagen der Programmierung II
DBIS - SS2007
Java - API - Dokumentation
http://java.sun.com/j2se/1.5.0/docs/api/
23
Grundlagen der Programmierung II
DBIS - SS2007
Java – API: Klasse Applet
24
Grundlagen der Programmierung II
DBIS - SS2007
Java – API: Klasse Applet
25
Grundlagen der Programmierung II
DBIS - SS2007
Java – API: Klasse Applet
26
Grundlagen der Programmierung II
DBIS - SS2007
Literatur zu Java
• Java Homepage Sun: http://java.sun.com
• Java API Specification:
http://java.sun.com/javase/6/docs/api/
• Java Compiler JDK 5.0 und Virtuelle Maschine JRE 5.0:
http://java.sun.com/javase/downloads/index.jsp
• Java Tutorial:
http://java.sun.com/developer/onlineTraining/new2java/index.html
• Horstmann, Cornell: "Core Java 2, Band 1", Addison-Wesley
• Java News: http://www.onjava.com/
• Reading: „Thinking in Java 3“ von Bruce Eckel !!!
27
Grundlagen der Programmierung II
DBIS - SS2007
Teil 2 – OO
Einführung in die
Objektorientierung
28
Objektorientierung
Das Objektmodell beschreibt „die Welt“
als eine Menge interagierender Objekte.
29
Grundlagen der Programmierung II
DBIS - SS2007
Kurze Wiederholung von:
• Objekt
• Klasse
• Attribute
• Methoden
• Identität eines Objektes
• Lebenszeit eines Objektes
• Vererbung
30
Grundlagen der Programmierung II
DBIS - SS2007
Objekt
Ein Objekt (Instanz) ist
• eine individuelle, benennbare reale oder abstrakte
Einheit mit einer wohldefinierten Rolle.
• eine klar abgrenzbare Einheit mit Merkmalen
(Zustand und Verhalten) und einer Identität.
• eine Ausprägung einer Klasse.
• eine gekapselte Datenstruktur, die zur Laufzeit des
Programms Speicherplatz belegt
und die nur über die Operationen der definierten
Schnittstelle manipuliert werden kann.
31
Grundlagen der Programmierung II
DBIS - SS2007
Klasse
Eine Klasse (Typ, Schablone) ist
• die Spezifikation einer Menge von Objekten mit
gleicher Struktur und gleichem Verhalten
(„Schablone“).
• eine Realisierung eines abstrakten Datentyps (ADT).
• ein benutzerdefinierter Typ in einer objektorientierten
Programmiersprache.
• eine zur Compilezeit des Programms notwendige
Typspezifikation.
32
Grundlagen der Programmierung II
DBIS - SS2007
Beispiele
Klasse
Objekte (Instanzen)
PKW
• mein Auto
• dein Auto
• das Auto mit dem Kennzeichen F-CB 2000
usw.
Geometrische Formen
• ein Kreis mit dem Radius 5 und Mittelpunkt (42,17)
• eine Pyramide mit Grundfläche 3x4 und Höhe 6
usw.
DVD
• „Mr. and Mrs. Smith“-DVD
• „King Kong“-DVD
33
Grundlagen der Programmierung II
DBIS - SS2007
Attribute und Zustand
Die Attribute eines Objektes
legen die Eigenschaften und Zustände des Objektes fest.
Der Zustand eines Objektes
ist die Gesamtheit der Attribute eines Objektes plus ihre momentanen Werte.
F-CB 2000
PKW
DA-XY 123
Typ
Farbe
km/h
34
Grundlagen der Programmierung II
DBIS - SS2007
Methoden
Methoden
• sind auf einem Objekt ausführbare Operationen.
• werden durch eintreffende Nachrichten ausgelöst.
• können den Objekt-Zustand verändern.
• werden innerhalb einer Klasse definiert.
Es gibt mehrere Arten von Methoden:
Modifikation
ändert Zustand
Selektion
liest Zustand
Iteration
wiederholte Modifikation oder Selektion
Konstruktion
kreiert ein Objekt und initialisiert Zustand
Destruktion
löscht Zustand und zerstört ein Objekt
35
Grundlagen der Programmierung II
DBIS - SS2007
Verhalten eines Objektes
Das Verhalten eines Objektes
• sind die Aktionen und Reaktionen des Objektes.
• wird durch die Methoden der Klasse des Objekts realisiert.
• wird durch den Aufruf der Methoden verursacht.
F-CB 2000
PKW
DA-XY 123
Typ
Farbe
km/h
VW
Rot
60
BMW
Gelb
100
beschleunigen()
bremsen()
36
Grundlagen der Programmierung II
DBIS - SS2007
Identität eines Objektes
• Objekte sind mittels Referenz eindeutig identifizierbar.
• Objekte haben eine Identität und meistens einen oder mehrere Namen
bzw. Referenzen.
• Objekte belegen einen Teil des Speichers.
• Der Zustand eines Objektes kann sich ändern, nicht seine Identität.
• Gleicher Zustand (also der gleiche Wert) bedeutet nicht gleiche
Identität!
Dies ist besonders bei Vergleichsoperationen zu beachten.
37
Grundlagen der Programmierung II
DBIS - SS2007
Identität eines Objektes
deinAuto
meinAuto
Referenz 1
keine Referenzen
Referenz 2
Objekt mit zwei Namen und zwei Referenzen
Objekt ohne Namen
Ein Objekt ohne Namen besitzt zwar eine Identität,
ist aber nicht (mehr) erreichbar Garbage Collection.
38
Grundlagen der Programmierung II
DBIS - SS2007
Lebenszeit von Objekten
Die Lebenszeit eines Objektes
ist die Zeit zwischen
• der Kreierung des Objektes und
• dem Löschen des Objektes (bzw. der Löschung der
letzten Referenz) mit anschließender Garbage Collection.
Garbage Collection
Java gibt automatisch den Speicher
unbenutzter Objekte frei!
Hat man die Referenzen vieler Objekte auf NULL gesetzt,
kann man mit System.gc() der Virtuellen Maschine den
Einsatz des GarbageCollectors empfehlen.
System.gc() sollte jedoch nur sehr sparsam verwendet
werden!
39
Grundlagen der Programmierung II
DBIS - SS2007
Vererbung (Inheritance) in der OOP
Eigenschaften der Vererbung von einer
Oberklasse zu seinen Unterklassen
Die Unterklasse hat alle Merkmale der Oberklasse und ist
ihr damit ähnlich. Sie kann die geerbten Attribute und Methoden
unverändert benutzen oder neu definieren (überschreiben).
Eine Unterklasse besitzt im Allgemeinen zusätzliche Attribute und
Methoden. Sie ist eine Spezialisierung, Konkretisierung und
Erweiterung ihrer Oberklasse.
Eine Unterklasse befindet sich auf einem
niedrigeren Abstraktionsgrad als die Oberklasse.
Die Vererbung ist transitiv.
Eine Unterklasse kann selbst wieder Oberklasse sein. Dadurch ergibt
sich eine Baumstruktur, die so genannte Vererbungsstruktur oder
Klassenhierarchie.
40
Grundlagen der Programmierung II
DBIS - SS2007
Ein Beispiel für die Vererbung aus der Praxis...
41
Grundlagen der Programmierung II
DBIS - SS2007
Beispiel für eine Klassenhierarchie (1)
Kraftfahrzeug
Typ, Farbe, kmh
beschleunigen()
bremsen()
Kraftfahrzeug ist eine Klasse mit den drei Attributen Typ, Farbe und
kmh und den beiden Methoden beschleunigen() und bremsen().
Es gibt aber auch „spezielle“ Kraftfahrzeuge, die ein zusätzliches,
gemeinsames Merkmal haben.
42
Grundlagen der Programmierung II
DBIS - SS2007
Beispiel für eine Klassenhierarchie (2)
Kraftfahrzeug
Typ, Farbe, kmh
beschleunigen()
bremsen()
LKW anhängen()
LKW ist eine Unterklasse von Kraftfahrzeug. Sie erbt alle
Eigenschaften von ihrer Oberklasse, hat aber die zusätzliche
Methode anhängen().
Es gibt auch Kraftfahrzeuge, die keine LKWs sind.
43
Grundlagen der Programmierung II
DBIS - SS2007
Beispiel für eine Klassenhierarchie (3)
Kraftfahrzeug
Omnibus Stehplätze
PKW
Typ, Farbe, kmh
beschleunigen()
bremsen()
LKW anhängen()
Omnibus, PKW und LKW sind jeweils Unterklassen der Klasse
Kraftfahrzeug. LKW hat eine zusätzliche Methode, Omnibus ein
zusätzliches Attribut. Die drei Unterklassen erben alle Merkmale
der Oberklasse Kraftfahrzeug.
Aber es gibt es auch mehrere, verschiedene Arten von PKWs,
die besondere Merkmale haben.
44
Grundlagen der Programmierung II
DBIS - SS2007
Beispiel für eine Klassenhierarchie (4)
Kraftfahrzeug
Omnibus Stehplätze
Limousine
PKW
Typ, Farbe, kmh
beschleunigen()
bremsen()
LKW anhängen()
Cabriolet Verdeck öffnen()
Cabriolet und Limousine können zusätzliche Methoden bzw. Attribute haben.
Beide erben alle Merkmale von PKW und damit auch von Kraftfahrzeug.
Eine solche Hierarchie lässt sich beliebig fortsetzen.
45
Grundlagen der Programmierung II
DBIS - SS2007
Mehrfach-Vererbung
Fahrzeug
Typ, Farbe, kmh
beschleunigen()
bremsen()
Schiff
PKW
LKW anhängen()
AmphibienFahrzeug
Mehrfach-Vererbung ist in Java nicht möglich!
46
Grundlagen der Programmierung II
DBIS - SS2007
Study By Yourself!
Beschäftigen Sie sich insbesondere
mit allen Stellen, die im Skript mit
diesem
Symbol markiert sind.
47
Grundlagen der Programmierung II
DBIS - SS2007
Teil 3 - UML
Einführung in UML
Anwendungsfalldiagramme
48
Was ist ein Modell?
• Ein Modell ist eine
Vereinfachung der Realität.
• Wir könne ein komplexes System
in seiner Gesamtheit nicht erfassen.
Wir bauen deshalb Modelle, um das zu
entwickelnde System besser zu verstehen.
• Prinzip „teile und herrsche“
49
Grundlagen der Programmierung II
DBIS - SS2007
Warum modellieren?
Beispiel: Der Bau einer Hundehütte
Man braucht nur einen Hammer, Nägel
und ein paar Bretter, baut diese zusammen
und der Hund ist glücklich.
Kein Modellieren nötig!
50
Grundlagen der Programmierung II
DBIS - SS2007
Warum modellieren?
Beispiel: Der Bau eines Hochhauses
• Ohne Planung und Arbeitsteilung unmöglich
• Viele Auflagen
• Sehr hohe Kosten
• Ansprüche der Mieter
Modellieren unumgänglich!
51
Grundlagen der Programmierung II
DBIS - SS2007
Ziele der Modellierung
• Modelle helfen, ein System zu visualisieren,
so wie es ist oder wie wir es wünschen.
• Modelle ermöglichen uns, die Struktur oder
das Verhalten eines Systems zu spezifizieren.
• Modelle liefern uns eine Schablone, die uns beim
Konstruieren eines Systems anleitet.
• Modelle dokumentieren die getroffenen
Entscheidungen.
UML (Unified Modeling Language) ist eine
Standardsprache zum Entwerfen von
Softwaremodellen.
52
Grundlagen der Programmierung II
DBIS - SS2007
Modellieren mit UML
• UML ermöglicht objektorientiertes Modellieren.
• Da UML standardisiert ist, können die Modelle von
anderen Anwendern verstanden werden.
• UML ermöglich „Forward-Engineering“:
Aus einem UML-Modell kann der Code einer
Programmiersprache erzeugt werden (Java, C++...).
• UML ermöglich „Reverse-Engineering“:
Aus dem Code einer Implementierung kann ein
entsprechendes UML-Modell erzeugt werden.
53
Grundlagen der Programmierung II
DBIS - SS2007
Modell-Typen in UML
Es ist sinnvoll, für die verschiedenen Sichtweisen auf ein System
unterschiedliche Modelle zu verwenden.
Programmierer
Hier: Statiker
Kunden
Klassendiagramm
54
Anwendungsfalldiagramm
Grundlagen der Programmierung II
DBIS - SS2007
Sichtweisen auf das System
In UML können verschiedene Sichtweisen auf
ein System anschaulich modelliert werden.
Für den Anwender (Kunde) existiert das
Anwendungsfalldiagramm.
Das Klassendiagramm repräsentiert ein Model
für den Code eines Systems und ist somit sehr
hilfreich für den Programmierer. Aber es ist sehr
technisch und deshalb nicht für alle Anwender
geeignet.
55
Grundlagen der Programmierung II
DBIS - SS2007
Multiple Diagramme in UML 2.0
56
Grundlagen der Programmierung II
DBIS - SS2007
Einführendes Beispiel
• Wir wollen ein einfaches Modell für eine
Flaschen-Pfandmaschine erstellen.
• Die Maschine soll eine Flasche aufnehmen,
die Flasche prüfen und falls diese akzeptiert
wurde, den Pfand ausgeben.
• Beispiel für eine
reale Pfandmaschine z.B.
im Aldi-Supermarkt.
57
Grundlagen der Programmierung II
DBIS - SS2007
Flaschen-Pfandmaschine
Grundlegende Funktionsweise:
Leergut
Kunde
58
Geld oder Bon
Grundlagen der Programmierung II
Pfandmaschine
DBIS - SS2007
Klassendiagramm
Pfandmaschine
geld: int
zahle(betrag: int)
Flasche
Flaschen-Pfandmaschine
anzFlaschen: int
nimm_Flasche()
59
0...*
0,1
groesse: float
nimmt auf
Grundlagen der Programmierung II
DBIS - SS2007
Anwendungsfalldiagramm
Beispiel Pfandmaschine
Pfandmaschine
Technikerin
Kunde
60
Grundlagen der Programmierung II
DBIS - SS2007
Zustandsdiagramm
(START)
bereit
(ZUSTAND)
Flasche am Sensor
Flasche aufnehmend
Flasche abgearbeitet
Fehler aufgetreten
Fehler aufgetreten
Fehler behoben
(ÜBERGANG)
(ENDE)
Fehler nicht behebbar
61
Fehler bearbeitend
Grundlagen der Programmierung II
DBIS - SS2007
Sequenzdiagramm
Pfandmaschine
Flaschenmechanik
ZEIT
nimmEineFlasche()
habeFlasche()
(acknowledgement)
62
Grundlagen der Programmierung II
DBIS - SS2007
Informationen zu UML
UML wurde aus mehreren Modellierungssprachen von
Grady Booch, Jim Rumbaugh und Ivar Jacobson
entwickelt und ist seit dem Jahr 1997 von der OMG
(Object Management Group) standardisiert.
Momentan ist die Version 2.1.1 aktuell:
http://www.omg.org/technology/documents/formal/uml.htm
Einige interessante Links zu UML:
• UML Resource Page: www.uml.org
• Rational: http://www-306.ibm.com/software/rational/uml/
• OMG Homepage: www.omg.org
63
Grundlagen der Programmierung II
DBIS - SS2007
Literatur zu OO und UML
• Heide Balzert: „Lehrbuch der Objektmodellierung“,
Spektrum AV
• B. Oestereich, C. Weiss, : „Objektorientierte
Geschäftsprozessmodellierung mit der UML“
dpunkt.verlag
• Grady Booch, Jim Rumbaugh, Ivar Jacobson:
„Das UML Benutzerhandbuch“, Addison-Wesley
• Grechenig, Zuser:
„SE mit UML und dem Unified Process“, Pearson
64
Grundlagen der Programmierung II
DBIS - SS2007
Tools für Diagramme in UML 2
Übersicht 100 UML Tools:
• www.jeckle.de/umltools.htm
Generierung von Code aus UML:
• z.B. Eclipse Omondo
www.omondo.de
65
Grundlagen der Programmierung II
DBIS - SS2007
Study By Yourself!
Beschäftigen Sie sich insbesondere
mit allen Stellen, die im Skript mit
diesem
Symbol markiert sind.
66
Grundlagen der Programmierung II
DBIS - SS2007
Herunterladen