4. Informatiktag NRW Projekt online Shop. Barbara Leipholz Schumacher Euregio Kolleg, Würselen

Save this PDF as:
 WORD  PNG  TXT  JPG

Größe: px
Ab Seite anzeigen:

Download "4. Informatiktag NRW 14.3.05. Projekt online Shop. Barbara Leipholz Schumacher Euregio Kolleg, Würselen"

Transkript

1 1/51 Projekt online Shop 4. Informatiktag NRW Barbara Leipholz Schumacher Euregio Kolleg, Würselen

2 2/51 Die Firma Sprachen Lernen möchte ihr Angebot auf online Bestellungen ausweiten. Sprache Art Englisch Anfänger, Fortgeschritten Englisch Anfänger + Fortgeschritten Netzwerk (5 Lizenzen) Französisch Anfänger, Fortgeschritten Französisch Anfänger + Fortgeschritten Netzwerk (5 Lizenzen) Spanisch Anfänger, Fortgeschritten Spanisch Anfänger + Fortgeschritten Netzwerk (5 Lizenzen) Chinesisch Anfänger Preis 44,95 199,95 44,95 199,95 44,95 199,95 79,95 Neue Kunden können sich online eintragen. Bereits registrierte Kunden melden sich mittels Benutzername und Kennwort an und können online Rechnungs und Lieferadresse und Bankverbindung bzw. Kreditkartendaten aktualisieren. Der Kunde kann von den angezeigten Artikeln einzelne Artikel zur Bestellung auswählen. Um die endgültige Bestellung durchzuführen, muss er sich authentisieren. Danach werden die zur Bestellung vorgemerkten Artikel, ihre Preise sowie der Rechnungsbetrag angezeigt. Wird die Bestellung abgeschickt, erhält der Kunde eine E Mail mit der Bestätigung der Bestellung und der Rechnung. Das System soll Kundendaten verwalten, insbesondere Name, Vorname, e Mail Adresse, Rechnung und Lieferadresse, Bankverbindung, Benutzername und Passwort des Kunden, sowie seine Bestellungen. Zusätzlich hat der Anbieter die Möglichkeit die einzelnen Artikel zu verwalten, d.h. Artikel aus dem Angebot streichen, Artikel ergänzen und Preise ändern.

3 3/51 Phasen der Softwareentwicklung Analyse Entwurf Implementierung Test Systemeinführung Wartung

4 4/51 Objektorientierte Analyse Relevante Abläufe der Realität auf ein Modell übertragen. Erforschen des Anwendungsbereichs Anwendungsfälle herausfinden Objekte aus den Anwendungsfällen herausarbeiten Klassen von den Objekten ableiten den Klassen Aufgaben zuordnen Zusammenarbeit von Klassen festlegen Quelle: siegen.de/iml/im/ooa/ooa.htm#anfang

5 Anforderung 5/51

6 6/51

7 Anforderung 7/51

8 8/51

9 9/51

10 10/51 Klassen ermitteln Analyse > Textanalyse > Substantive unterstreichen Das Angebot: Sprache Art Englisch Anfänger, Fortgeschritten Englisch Anfänger + Fortgeschritten Netzwerk (5 Lizenzen) Französisch Anfänger, Fortgeschritten Französisch Anfänger + Fortgeschritten Netzwerk (5 Lizenzen) Spanisch Anfänger, Fortgeschritten Spanisch Anfänger + Fortgeschritten Netzwerk (5 Lizenzen) Chinesisch Anfänger Preis 44,95 199,95 44,95 199,95 44,95 199,95 79,95 Neue Kunden können sich online eintragen. Bereits registrierte Kunden melden sich mittels Benutzername und Kennwort an und können online Rechnungs und Lieferadresse und Bankverbindung aktualisieren. Der Kunde kann von den angezeigten Artikeln einzelne Artikel zur Bestellung auswählen. Um die endgültige Bestellung durchzuführen, muss er sich authentisieren. Danach werden die zur Bestellung vorgemerkten Artikel, ihre Preise sowie der Rechnungsbetrag angezeigt. Wird die Bestellung abgeschickt, erhält der Kunde eine E Mail mit der Bestätigung der Bestellung und der Rechnung. Das System soll Kundendaten verwalten, insbesondere Name, Vorname, e Mail Adresse, Rechnung und Lieferadresse, Bankverbindung, Benutzername und Passwort des Kunden, sowie seine Bestellungen. Zusätzlich hat der Anbieter die Möglichkeit die einzelnen Artikel zu verwalten, d.h. Artikel aus dem Angebot streichen, Artikel ergänzen und Preise ändern.

11 11/51 Klassen ermitteln Analyse > Textanalyse > Substantive > Wertetest > Frage Kann ein Substantiv einen konkreten Wert annehmen? Angebot Sprache Art Preis Rechnungsadresse Lieferadresse Kunde Name Vorname Adresse Bankverbindung... Benutzername Passwort Artikel Bestellung Rechnung E Mail Bestätigung NEIN NEIN NEIN NEIN NEIN NEIN NEIN NEIN NEIN NEIN

12 12/51 Klassen ermitteln Analyse > Textanalyse > Substantive > Wertetest > Weitere Fragen 1. Ist Substantiv eindeutig identifizierbar, bzw. ist es wichtig 2 verschiedene Exemplare zu unterscheiden? 2. Hat Substantiv außer dem indentifizierenden Attribut noch ein weiteres? 3. Gibt es von Substantiv eine Mehrzahl? Substantiv Frage 1 Frage 2 Frage 3 Kunde Adresse Bank Kreditkarte Artikel Bestellung Rechnung

13 13/51 Operationen ermitteln Analyse > Textanalyse > Substantive > Wertetest > Weitere Fragen Tut Substantiv etwas oder wird mit Substantiv etwas getan? Substantiv Frage 4 Kunde wählt Artikel, geht zur Kasse,... Adresse ändern Bank ändern; Kontonummer, Bank, Bankleitzahl angeben Kreditkarte ändern; Kartennummer, Art, Verfallsdatum... angeben Artikel Artikelnummer, Sprache, Art, Preis angeben Bestellung Bestellung angeben Rechnung Rechnung angeben

14 14/51 Operationen und Assoziationen ermitteln Analyse > Textanalyse Assoziation Lehrbuch Grundlagen der Informatik, Helmut Balzert, S. 175 Eine Assoziation modelliert Verbindungen zwischen Objekten einer oder mehrer Klassen. Eine Assoziation modelliert stets Beziehungen zwischen Objekten, nicht zwischen Klassen. Es ist jedoch üblich, von einer Assoziation zwischen Klassen zu sprechen, obwohl streng genommen die Objekte dieser Klasse gemeint sind.

15 15/51 Operationen und Assoziationen ermitteln Analyse > Textanalyse > Verben unterstreichen Angebot: Sprache Art Englisch Anfänger, Fortgeschritten Englisch Anfänger + Fortgeschritten Netzwerk (5 Lizenzen) Französisch Anfänger, Fortgeschritten Französisch Anfänger + Fortgeschritten Netzwerk (5 Lizenzen) Spanisch Anfänger, Fortgeschritten Spanisch Anfänger + Fortgeschritten Netzwerk (5 Lizenzen) Chinesisch Anfänger Preis 44,95 199,95 44,95 199,95 44,95 199,95 79,95 Neue Kunden können sich online eintragen. Bereits registrierte Kunden melden sich mittels Benutzername und Kennwort an und können online Rechnungs und Lieferadresse und Bankverbindung bzw. Kreditkartendaten aktualisieren. Der Kunde kann von den angezeigten Artikeln einzelne Artikel zur Bestellung auswählen. Um die endgültige Bestellung durchzuführen, muss er sich authentisieren. Danach werden die zur Bestellung vorgemerkten Artikel, ihre Preise sowie der Rechnungsbetrag angezeigt. Wird die Bestellung abgeschickt, erhält der Kunde eine E Mail mit der Bestätigung der Bestellung und der Rechnung. Das System soll Kundendaten verwalten, insbesondere Name, Vorname, e Mail Adresse, Rechnung und Lieferadresse, Bankverbindung, Benutzername und Passwort des Kunden, sowie seine Bestellungen. Zusätzlich hat der Anbieter die Möglichkeit die einzelnen Artikel zu verwalten, d.h. Artikel aus dem Angebot streichen, Artikel ergänzen und Preise ändern.

16 16/51 Operationen und Assoziationen ermitteln Analyse > Textanalyse > Verben Ein Verb, das im Zusammenhang mit einem Substantiv erwähnt wird, das bereits als Klasse erkannt wurde, wird es als Operation zu dieser modelliert. Ein Verb, das im Zusammenhang mit mehreren Substantiven steht, bei denen es sich mit hoher Wahrscheinlichkeit um Klassen handelt, wird voraussichtlich als Assoziation zwischen den beiden Klassen modelliert. Ausdrücke wie "Bestellung ausführen", statt "bestellen", werden wie Verben betrachtet. Kunde auswählen Artikel Assoziation zwischen Kunde und Artikel Kunde bestellen Artikel Assoziation zwischen Kunde und Artikel Kundendaten eintragen Server Assoziation zwischen Kunde und Server Kunde anmelden Server Operation von Server Kunde authentisieren Server Operation von Server Kunde aktualisieren Bankverbindung,.., Adressen Assoziation Kunde, Bestellung, Artikel verwalten Server Assoziation Artikel streichen, hinzufügen Operation von Artikelverwaltung Artikel Preis ändern Operation Kundenverwaltung verwaltet Kunden Assoziation zwischen Kundenverwaltung und Kunde Artikelverwaltung verwaltet Artikel Assoziation zwischen Artikelverwaltung und Artikel

17 17/51 Assoziationen ermitteln, Kardinalitäten und Rollen ergänzen Analyse > Textanalyse > Verben Kardinalität Lehrbuch der Objektmodellierung, Heide Balzert, S. 57 Die Kardinalität bezeichnet die Wertigkeit einer Assoziation, d.h. sie spezifiziert die Anzahl der an der Assoziation beteiligten Objekte. Definition Rolle Lehrbuch Grundlagen der Informatik, Helmut Balzert, S. 175 Die Rolle gibt an, welche Funktion ein Objekt in einer Assoziation hat.

18 18/51 Operationen und Assoziationen ermitteln Kundenverwaltung Server verwaltet kommuniziert mit 1..* Adresse Kunde 0..* 1..* Artikel wählt aus/ bestellt hat 1..2 Konto 1..* hat hat 0..1 Geldkarte 0..1 verwaltet Artikelverwaltung

19 19/51 CRC Karten Analyse CRC = Class Responsibilities Collaborators (Klasse Zuständigkeiten Partnerklassen) Szenario Objektorientierte Programmierung mit Java, David Barnes, Michael Kölling, S. 394 Ein Szenario ist ein Beispiel für eine Aktivität, die das System ausführen oder unterstützen muss. Szenarios werden häufig auch als Geschäftsfälle (engl. use cases) bezeichnet.

20 20/51 CRC Karten Analyse > CRC Karten Kunde Klassenname Attribute Operation Beteiligte Attribute kundennummer nachname vorname benutzername passwort Operation gibkundennummer gibnachname... aendereadresse aenderebankverbindung aendere aenderepasswort... Beteiligte Adresse Konto Geldkarte Artikel Bestellung Warenkorb

21 21/51 CRC Karten Analyse > CRC Karten Warenkorb Artikel Attribute artikelnummer sprache art preis Operation gibartikelnummer gibsprache... aenderepreis Beteiligte Attribute einkaufsliste Operation hinzufuegen entfernen ändereanzahl erhöheanzahl zustring Beteiligte ArtikelUndAnzahl

22 22/51 CRC Karten Analyse > CRC Karten ArtikelUndAnzahl Attribute zahl artikel Operation ändereanzahl erhöheanzahl gibanzahl gibartikel gibnummer gibsprache gibpreis gibartikel Bestellung Beteiligte Artikel Attribute datum kunde bestelliste Operation tostring gibrechnung Beteiligte Datum Kunde ArtikelUndAnzahl

23 CRC Karten Analyse > CRC Karten Karten so anordnen, dass Assoziationen und Kardinalitäten eingetragen werden können. 23/51

24 24/51 CRC Karten Analyse > CRC Karten Kunde Beteiligte Adresse Konto Geldkarte Artikel Bestellung Warenkorb ArtikelUndAnzahl Beteiligte Artikel 1..* 1 1 macht 1..* enthält hat 1 1 enthält Warenkorb 0..* 1 Bestellung Beteiligte ArtikelUndAnzahl Beteiligte Datum Kunde ArtikelUndAnzahl

25 25/51 Checkliste Klassen Analyse > Checklisten 1. Liegt ein aussagefähiger Klassenname vor? 2. Ist das gewählte Abstraktionsniveau richtig? 3. Wann liegt keine Klasse vor? 4. Relevanz der Objekte einer Klasse für das System? Quelle: siegen.de/iml/im/ooa/check.htm#anfang

26 26/51 Checkliste Operationen Analyse > Checklisten 1. Welche Aufgaben müssen realisiert werden? 2. Auf welche Ereignisse muss das System reagieren? 3. Welche Art von Operation liegt vor? 4. Zu welcher Klasse gehört die Operation? 5. Besitzt die Operation einen geeigneten Namen? Quelle: siegen.de/iml/im/ooa/check.htm#anfang

27 Anwendungsfallanalyse Analyse > Anwendungsfallanalyse bilder/usecasekunde.gif 27/51

28 28/51 Szenarios Analyse > Szenarios Artikel zum Warenkorb hinzufügen zur Kasse gehen Authentisierung Server Authentisierung Benutzer Bestellung bestätigen

29 Prototyping Analyse > Prototyping 29/51

30 30/51 Szenarios Analyse > Szenario 1. Sequenzdiagramm Artikel zum Warenkorb hinzufügen bilder/sequenzinwarenkorb.jpg 2. Aktivitätsdiagramm Server Authentisierung bilder/authentisierung.gif 3. Sequenzdiagramm zur Kasse bilder/sequencebestellung.jpg

31 Objektorientierter Entwurf Entwurf > Architektur Drei Schichten Architektur 1. Benutzungsoberfläche 2. Fachkonzept 3. Datenhaltung 31/51

32 32/51 Objektorientierter Entwurf Entwurf > Klassendiagramm Klassendiagramm ergänzen Container Klassen Attribute Sichtbarkeit Datentyp Operationen Sichtbarkeit Signatur Konstruktoren Uni und bidirektionale Assoziationen Assoziation, Aggregation, Komposition

33 33/51

34 bilder/kunde2.jpg 34/51

35 bilder/sitzung.jpg 35/51

36 bilder/bestellung.jpg 36/51

37 bilder/kundenverwaltung.jpg 37/51

38 bilder/artikelverwaltung.jpg 38/51

39 bilder/server.jpg 39/51

40 bilder/serverkrypto.jpg 40/51

41 41/51 RMI Remote Method Invocation ShopClient ShopClient Server Stub Skeleton

42 42/51 Client Stub Stellvertreterobjekt des Servers mit gleicher Schnittstelle leitet Methodenaufrufe an den Server weiter Server Skeleton nimmt Aufrufe des Stubs entgegen bereitet sie auf und übermittelt sie an das Serverobjekt erwartet das Ergebnis und sendet es zurück an den Stub 1. RMI Referenzschicht Finden des Kommunikationspartners, Namensdienst (Registry) 2. RMI Transportschicht Verwaltung der Kommunikationsverbindung und Abwicklung der Kommunikation 3. Transportschicht stellt Host zu Host Datendienste zur Verfügung 4. Internetschicht definiert den Aufbau von Datagrammen und routet Daten durchs Netz 5. Netzzugangsschicht enthält Routinen für den Zugriff auf physikalische Netze

43 43/51 rmiregistry Naming.lookup ShopClient Server.anmelden() Naming.rebind Server

44 44/51 Interface IServer import java.rmi.*; import java.util.vector; public interface IServer extends Remote { public Vector authentisiereserver(string geheimzahl, String testchiffre) throws RemoteException; public boolean authentisieren(string sitzungsid, String benutzername, String passwort) throws RemoteException; public void inwarenkorb(string sitzungsid, String nummer) throws RemoteException; public Vector gibwarenkorb(string sitzungsid) throws RemoteException; public Vector gibbestellung(string sitzungsid) throws RemoteException; public String gibanzahl(string sitzungsid, String nummer) throws RemoteException; public String gibgesamt(string sitzungsid, String nummer) throws RemoteException; public void aendereanzahl(string sitzungsid, String nummer, String anzahlneu) throws RemoteException; public void bestaetigen(string sitzungsid) throws RemoteException; public void beenden(string sitzungsid) throws RemoteException; }

45 45/51 Ergänzungen Server import java.rmi.*; import java.rmi.server.*; public class Server extends java.rmi.server.unicastremoteobject implements IServer //Konstruktor public Server() throws RemoteException { super();... }

46 46/51 Ergänzungen Server public static void main(string[] args) throws RemoteException { if (System.getSecurityManager() == null) System.setSecurityManager(new RMISecurityManager()); try { Server server = new Server(); Naming.rebind("//IPAdresse/onlineShop",server); } catch (Exception e) { e.printstacktrace(); } }

47 47/51 Ergänzungen Client 1. import java.rmi.*; 2. public static void main(string[] args) { try { System.setSecurityManager(new RMISecurityManager()); IServer server = (IServer) Naming.lookup("rmi://IPAdresse/onlineShop"); new ShopClient(server); } catch (Exception e) { e.printstacktrace(); } }

48 48/51 Ergänzungen Client 3. Die Methoden: try {... } catch ( RemoteException fehler) { e.printstacktrace(); } oder: public void methodenname(...) throws RemoteExeception

49 bilder/iserver.gif 49/51

50 50/51 1. Server und ShopClient kompilieren 2. Stub und Skeleton erzeugen rmic Server > Server_Stub.class, Server_Skel.class 3. Namensdienst starten rmiregistry 4. Server starten java Server java Djava.security.policy=/pfad/java.policy Server 5. Dateien auf Client Rechner kopieren ShopClient.class, Server_Stub.class 6. ShopClient starten java ShopClient java Djava.security.policy=/pfad/java.policy ShopClient

51 51/51 Security Java_Home/jre/lib/security/java.policy grant { permission java.security.allpermission; }; oder permission java.net.socketpermission localhost:1099, connect, accept,, listen

Systemprogrammierung. Projekt: Java RMI. Wintersemester 2006 / 2007

Systemprogrammierung. Projekt: Java RMI. Wintersemester 2006 / 2007 Systemprogrammierung Projekt: Java RMI Wintersemester 2006 / 2007 Systemprogrammierung 1. Einleitung 2. Einführung in RPC 3. RMI 4. Code Beispiele 5. Live Vorstellung 6. Ausblick 7. Fazit 2 1. Einleitung

Mehr

Remote Method Invocation

Remote Method Invocation Remote Method Invocation Aufruf von Methoden über die Grenzen der VM hinweg. Javaprozesse der rufenden und gerufenen Methode können auf verschiedenen Hosts laufen. Eine RMI-Applikation besteht aus dem

Mehr

Remote Method Invocation

Remote Method Invocation Remote Method Invocation spezielle Technik aus dem Java-Umfeld Ausführung der Methoden auf einem entfernten Rechner Analogon zum RPC (Remote Procedure Call) Zweck: Objekte in verschiedenen Java-VM s Aufruf

Mehr

Remote Method Invocation

Remote Method Invocation Remote Method Invocation Spezielle Technik aus dem Java-Umfeld Ausführung von Methoden auf einem entfernten Rechner Analogon zum RPC (Remote Procedure Call) Zweck: Objekte in verschiedenen Java-VMs Aufruf

Mehr

7.1.5 Java RMI Remote Method Invocation (http://java.sun.com/products/jdk/rmi) (http://java.sun.com/j2se/1.3/docs/guide/rmi/spec/rmitoc.

7.1.5 Java RMI Remote Method Invocation (http://java.sun.com/products/jdk/rmi) (http://java.sun.com/j2se/1.3/docs/guide/rmi/spec/rmitoc. 7.1.5 Java RMI Remote Method Invocation (http://java.sun.com/products/jdk/rmi) (http://java.sun.com/j2se/1.3/docs/guide/rmi/spec/rmitoc.html) bietet leider nur begrenzte Verteilungsabstraktion Unterstützung

Mehr

Java-Programmierung. Remote Method Invocation - RMI

Java-Programmierung. Remote Method Invocation - RMI Java-Programmierung Remote Method Invocation - RMI Entwicklungsmethoden Sockets Entwurf verteilter Anwendungen ist relativ aufwändig, da zunächst ein Kommunikationsprotokoll entwickelt werden muss aufwändig

Mehr

Kurzanleitung RMI-Beispiel: gettime Seite 1 / 7. RMI Projekt gettime 1

Kurzanleitung RMI-Beispiel: gettime Seite 1 / 7. RMI Projekt gettime 1 Kurzanleitung RMI-Beispiel: gettime Seite 1 / 7 Inhaltsverzeichnis RMI Projekt gettime 1 Schritt 1: Interface Klasse definieren 1 Schritt 2: Implementation Class definieren 2 Schritt 3: RMI Compiler erstellen

Mehr

Java Remote Method Invocation (RMI)

Java Remote Method Invocation (RMI) Java Remote Method Invocation (RMI) Alexander Petry 13. Mai 2003 engl.: Entfernter Methodenaufruf 1 Übersicht 1. Einleitung 2. RMI Interfaces und Klassen 3. Parameterübergabe 4. Dynamisches Nachladen von

Mehr

8.1.5 Java RMI Remote Method Invocation

8.1.5 Java RMI Remote Method Invocation 8.1.5 Java RMI Remote Method Invocation (http://java.sun.com/products/jdk/rmi ) (http://java.sun.com/j2se/1.5/docs/guide/rmi ) (http://java.sun.com/docs/books/tutorial/rmi ) (http://java.sun.com/developer/onlinetraining/rmi/rmi.html

Mehr

Client Server -Anwendungen mit UML und Java

Client Server -Anwendungen mit UML und Java 3. Informatiktag NRW Client-Server mit UML und Java - 1/40 29.3.2004 Client Server -Anwendungen mit UML und Java 3. Informatiktag NRW 29.3.04 Barbara Leipholz-Schumacher Euregio-Kolleg, Würselen 3. Informatiktag

Mehr

9. Remote Method Invocation Grundlagen der Programmierung II (Java)

9. Remote Method Invocation Grundlagen der Programmierung II (Java) 9. Remote Method Invocation Grundlagen der Programmierung II (Java) Prof. Dr. Bernhard Humm Hochschule Darmstadt University of Applied Sciences Sommersemester 2006 Übersicht Grundlagen der Programmierung

Mehr

Java RMI Remote Method Invocation

Java RMI Remote Method Invocation Java RMI Remote Method Invocation Ziel: Aufruf von Instanzmethoden entfernter Objekte basierend auf Java. Paket: java.rmi und Unterpakete Topologie: RMI Registry RMI Server RMI Client Der Server registriert

Mehr

Anleitung. Ein einfaches RMI-Beispiel. (ab Java 5.0) c Y. Pfeifer. (Juni 2014)

Anleitung. Ein einfaches RMI-Beispiel. (ab Java 5.0) c Y. Pfeifer. (Juni 2014) Anleitung Ein einfaches RMI-Beispiel (ab Java.0) c Y. Pfeifer (Juni 014) 1 Ein einfaches RMI-Beispiel Vorgehensweise: 1. Java Projekt anlegen. Zwei Packages server & client erstellen Auf der Server-Seite

Mehr

7 Remote Method Invocation (RMI)

7 Remote Method Invocation (RMI) 7 Remote Method Invocation (RMI) Verteilte Java Anwendungen; Client/Server Architektur Vorläufige Version 188 c 2005 Peter Thiemann Server: Aufgaben erstellt remote objects Objekte, deren Methoden von

Mehr

UNIVERSITÄT LEIPZIG. Mainframe Internet Integration SS2013. Java Remote Method Invocation RMI Beispiel

UNIVERSITÄT LEIPZIG. Mainframe Internet Integration SS2013. Java Remote Method Invocation RMI Beispiel UNIVERSITÄT LEIPZIG Mainframe Internet Integration Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth SS2013 Java Remote Method Invocation RMI Beispiel el0100 copyright Abt. Technische Informatik,

Mehr

Client/Server-Programmierung

Client/Server-Programmierung Client/Server-Programmierung WS 2014/2015 Betriebssysteme / verteilte Systeme rolanda.dwismuellera@duni-siegena.de Tel.: 0271/740-4050, Büro: H-B 8404 Stand: 15. Oktober 2015 Betriebssysteme / verteilte

Mehr

Client/Server-Programmierung

Client/Server-Programmierung Client/Server-Programmierung WS 2014/2015 Betriebssysteme / verteilte Systeme rolanda.dwismuellera@duni-siegena.de Tel.: 0271/740-4050, Büro: H-B 8404 Stand: 15. Oktober 2015 Betriebssysteme / verteilte

Mehr

Konzepte von Betriebssystem-Komponenten Middleware RMI

Konzepte von Betriebssystem-Komponenten Middleware RMI Konzepte von Betriebssystem-Komponenten Middleware RMI Mario Kiefer 21. Januar 2005 1 Einführung RMI (Remote Method Invocation) ermöglicht es mit relativ einfachen Mitteln verteilte Anwendungen zu erstellen.

Mehr

RMI Server und Client

RMI Server und Client RMI Server und Client RMI Server Remote Objekt(e) bereitstellen Wurzel Objekt in Verzeichnisdienst anmelden RMI Client Wurzel Objekt in entfernter JVM mittels Verzeichnisdienst finden Methoden von Remote

Mehr

Übung zur Vorlesung "Einführung in Verteilte Systeme"

Übung zur Vorlesung Einführung in Verteilte Systeme Übung zur Vorlesung "Einführung in Verteilte Systeme" Wintersemester 2004/05 Thema: Java RMI Ulf Rerrer Institut für Informatik Universität Paderborn Inhalt Java Remote Method Invocation RMI-Architektur!

Mehr

B Java RMI B.2 B.4. 1 Java. 1.2 Methoden. 1.1 Objekte (2) 1.1 Objekte. Objektorientierte Sprache. Klassenbeschreibung. Methode ist eine Art Funktion

B Java RMI B.2 B.4. 1 Java. 1.2 Methoden. 1.1 Objekte (2) 1.1 Objekte. Objektorientierte Sprache. Klassenbeschreibung. Methode ist eine Art Funktion 1 Java 1.1 e B Java RMI orientierte Sprache e beschrieben in Klassendefinitionen und andere Datentypen: int, float, boolean, etc. referenzen Verweise auf e keine Zeiger, Adressen o.ä. B.1 B.2 1.1 e (2)

Mehr

Komponententechnologien Winter 2016/17. Komponenten. 2. Die Anfänge. Peter Sturm, Universität Trier 1

Komponententechnologien Winter 2016/17. Komponenten. 2. Die Anfänge. Peter Sturm, Universität Trier 1 Komponenten 1 2. Die Anfänge 3 Peter Sturm, Universität Trier 1 Selbstzufrieden Anwendung Hardware 4 Oh? Da gibt es noch jemanden? Anwendung Anwendung TCP/IP Hardware Hardware 5 Peter Sturm, Universität

Mehr

Musterlösung Übungsblatt 2 Netzprogrammierung WS 05/06

Musterlösung Übungsblatt 2 Netzprogrammierung WS 05/06 Musterlösung Übungsblatt 2 Netzprogrammierung WS 05/06 Aufgabe 1 Bitte schreiben Sie ein RMI Objekt, das eine Person repräsentiert. Es soll die folgende Schnittstelle implementieren: public interface Person

Mehr

Mobile und Verteilte Datenbanken

Mobile und Verteilte Datenbanken Mobile und Verteilte Datenbanken Java RMI Vorlesung Wintersemester 2010/2011 groppe@ifis.uni-luebeck.de Institut für Informationssysteme Universität zu Lübeck Java Remote Method Invocation (RMI) Realisierung

Mehr

Themen. Web Service - Clients. Kommunikation zw. Web Services

Themen. Web Service - Clients. Kommunikation zw. Web Services Themen Web Service - Clients Kommunikation zw. Web Services Bisher: Implementierung einer Java Anwendung und Bereitstellung durch Apache Axis unter Apache Tomcat Java2WSDL Erzeugen einer WSDL-Datei zur

Mehr

-Testen verteilter Anwendungen

-Testen verteilter Anwendungen -Testen verteilter Anwendungen Seminar Simulation und Bildanalyse mit Java im SS04 Konstantin Tjo, Urs Pricking Testen verteilter Anwendungen 1 Übersicht Einführung in verteilte Anwendungen RMI (Remote

Mehr

Programmieren II. Remote Method Invocation (RMI) Heusch -- Ratz. Institut für Angewandte Informatik

Programmieren II. Remote Method Invocation (RMI) Heusch -- Ratz.  Institut für Angewandte Informatik Programmieren II Remote Method Invocation (RMI) Heusch -- Ratz KIT Universität des Landes Baden-Württemberg und nationales Großforschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu Remote Method

Mehr

Drei-Schichten-Architektur. Informatik B - Objektorientierte Programmierung in Java. Vorlesung 16: 3-Schichten-Architektur 1 Fachkonzept - GUI

Drei-Schichten-Architektur. Informatik B - Objektorientierte Programmierung in Java. Vorlesung 16: 3-Schichten-Architektur 1 Fachkonzept - GUI Universität Osnabrück Drei-Schichten-Architektur 3 - Objektorientierte Programmierung in Java Vorlesung 6: 3-Schichten-Architektur Fachkonzept - GUI SS 2005 Prof. Dr. F.M. Thiesing, FH Dortmund Ein großer

Mehr

Remote Methode Invocation (RMI) ETIS SS05

Remote Methode Invocation (RMI) ETIS SS05 Remote Methode Invocation (RMI) ETIS SS05 Motivation Ablauf der Kommunikation Erstellung Remote-Service Zusammenfassung Gliederung 2 Motivation I RMI: Remote Method Invokation Möglichkeit verteilte Java-Anwendungen

Mehr

Mobile und Verteilte Datenbanken

Mobile und Verteilte Datenbanken Mobile und Verteilte Datenbanken Java RMI Vorlesung Wintersemester 2013/2014 groppe@ifis.uni-luebeck.de Institut für Informationssysteme Universität zu Lübeck Kommunikations-Middleware Bietet höhere Kommunikations-Dienste

Mehr

Große Übung Praktische Informatik 1

Große Übung Praktische Informatik 1 Große Übung Praktische Informatik 1 2005-12-08 fuessler@informatik.uni-mannheim.de http://www.informatik.uni-mannheim.de/pi4/people/fuessler 1: Announcements / Orga Weihnachtsklausur zählt als Übungsblatt,

Mehr

Grundlagen verteilter Systeme

Grundlagen verteilter Systeme Universität Augsburg Institut für Informatik Prof. Dr. Bernhard Bauer Stephan Roser Viviane Schöbel Aufgabe 1: Wintersemester 07/08 Übungsblatt 2 20.11.07 Grundlagen verteilter Systeme Lösungsvorschlag

Mehr

Inhalt. Übung zur Vorlesung "Einführung in Verteilte Systeme" Das RMI-Schichtenmodell. Java Remote Method Invocation. Wintersemester 2004/05

Inhalt. Übung zur Vorlesung Einführung in Verteilte Systeme Das RMI-Schichtenmodell. Java Remote Method Invocation. Wintersemester 2004/05 Übung zur Vorlesung "Einführung in Verteilte Systeme" Wintersemester 2004/05 Ulf Rerrer Thema: Java RMI Institut für Informatik Universität Paderborn Inhalt Java Remote Method Invocation RMI-Architektur!

Mehr

Java Einführung Umsetzung von Beziehungen zwischen Klassen. Kapitel 7

Java Einführung Umsetzung von Beziehungen zwischen Klassen. Kapitel 7 Java Einführung Umsetzung von Beziehungen zwischen Klassen Kapitel 7 Inhalt Wiederholung: Klassendiagramm in UML Java-Umsetzung von Generalisierung Komposition Assoziationen 2 Das Klassendiagramm Zweck

Mehr

Fakultät Angewandte Informatik Programmierung verteilter Systeme 28.11.2011. Übungen zur Vorlesung Informatik II, Blatt 6

Fakultät Angewandte Informatik Programmierung verteilter Systeme 28.11.2011. Übungen zur Vorlesung Informatik II, Blatt 6 WS 2011/12 Fakultät Angewandte Informatik Programmierung verteilter Systeme 28.11.2011 Prof. Dr. Bernhard Bauer Übungen zur Vorlesung Informatik II, Blatt 6 Abgabe: Montag, 05.12.2011, 12.00 Uhr, Informatik

Mehr

10.1 Remote Method Invocation (RMI)

10.1 Remote Method Invocation (RMI) 10.1 Remote Method Invocation (RMI) Verteilte Java Anwendungen Methodenaufrufe auf Fremdobjekten (remote objects) Object Serialization Typen bleiben erhalten Package java.rmi (und andere) Vorläufige Version

Mehr

Praktikum aus Softwareentwicklung 2, Stunde 8

Praktikum aus Softwareentwicklung 2, Stunde 8 Praktikum aus Softwareentwicklung 2, Stunde 8 Lehrziele/Inhalt 1. Remoting Remoting Über Remoting können Objekte über JavaVMs hinweg miteinander kommunizieren. Das ist auch mit Socket-Programmierung möglich.

Mehr

Warum EJB Technologie (1)?

Warum EJB Technologie (1)? Datenbanken und Informationssysteme 2 SS 2004 Prof. Dr. Stefan Böttcher Universität Paderborn Datenbanken und Informationssysteme 2 - Prof. Dr. Stefan Böttcher - SS 2004 Folie EJB - 1 Warum EJB Technologie

Mehr

Taxi-Simulation. Objektorientierte Analyse. Verb-Substantiv-Methode

Taxi-Simulation. Objektorientierte Analyse. Verb-Substantiv-Methode Informatik Taxi-Simulation Seite 1 Taxi-Simulation Ein Taxiunternehmen untersucht gerade, ob es sein Einsatzgebiet in einen bisher nicht abgedeckten Teil der Stadt ausdehnen soll. Basierend auf den geschätzten

Mehr

Verteilte Systeme. Verteilte Objektorientierte Systeme I. Prof. Dr. Oliver Haase

Verteilte Systeme. Verteilte Objektorientierte Systeme I. Prof. Dr. Oliver Haase Verteilte Systeme Verteilte Objektorientierte Systeme I Prof. Dr. Oliver Haase 1 Überblick Verteilte Objektorientierte Systeme 1 RPC verteilte objektorientierte Architekturen Java RMI Verteilte Objektorientierte

Mehr

Übungen zu Softwaretechnik

Übungen zu Softwaretechnik Prof. Dr. Dr. h.c. M. Broy Lösungsblatt 11 Dr. H. Ehler, S. Wagner 23. Januar 2004 Übungen zu Softwaretechnik Aufgabe 16 Qualitätseigenschaften Broker-Pattern Beurteilen Sie das in Aufgabe 15 benutzte

Mehr

UML - SequenzDiagramme

UML - SequenzDiagramme UML - Sequenzdiagramme - Seite 1 UML - SequenzDiagramme (1.) Kopieren Sie das erste Beispiel in Dateien und lassen Sie es laufen! Zeichnen Sie das zugehörige Sequenzdiagramm aus dem Quellkode(evtl. rechte

Mehr

Software Engineering Klassendiagramme Einführung

Software Engineering Klassendiagramme Einführung Software Engineering Klassendiagramme Einführung Prof. Adrian A. Müller, PMP, PSM 1, CSM Fachbereich Informatik und Mikrosystemtechnik 1 Aufgabe Erstellen Sie eine Klasse Person in Java. Jede Person verfügt

Mehr

Java: Vererbung. Teil 3: super() www.informatikzentrale.de

Java: Vererbung. Teil 3: super() www.informatikzentrale.de Java: Vererbung Teil 3: super() Konstruktor und Vererbung Kindklasse ruft SELBSTSTÄNDIG und IMMER zuerst den Konstruktor der Elternklasse auf! Konstruktor und Vererbung Kindklasse ruft SELBSTSTÄNDIG und

Mehr

Klausur zur Vorlesung Einführung in Verteilte Systeme WS 05/06 Prof. Dr. Odej Kao 3. Februar 2006

Klausur zur Vorlesung Einführung in Verteilte Systeme WS 05/06 Prof. Dr. Odej Kao 3. Februar 2006 Klausur zur Vorlesung Einführung in Verteilte Systeme WS 05/06 Prof. Dr. Odej Kao 3. Februar 2006 Aufkleber Name: Vorname: Matrikel: Studiengang: inkl. DPO4, B/M, Schwerp., Schreiben Sie zunächst Ihren

Mehr

J Fernmethodenaufrufe Remote Method Invocation (RMI)

J Fernmethodenaufrufe Remote Method Invocation (RMI) J Fernmethodenaufrufe Remote Method Invocation (RMI) ermöglicht Abstraktion in einem verteilten System Socket-Kommunikation Fernaufrufe (RPC) J Fernmethodenaufrufe Remote Method Invocation (RMI) keine

Mehr

2. Übung zu Software Engineering

2. Übung zu Software Engineering 2. Übung zu Software Engineering WS 2007/2008 Organisatorisches [SE] als Teil des E-Mail-Betreffs nicht: SE, Software Engineering, Blatt 01 etc. Abgabe: EINE pdf-datei, spätestens 11:30 Uhr nicht: xls,

Mehr

Client/Server-Programmierung

Client/Server-Programmierung Client/Server-Programmierung WS 2013/2014 Betriebssysteme / verteilte Systeme rolanda.dwismuellera@duni-siegena.de Tel.: 0271/740-4050, Büro: H-B 8404 Stand: 8. November 2013 Betriebssysteme / verteilte

Mehr

Lösungen zu Übung 3 Objektorientierte Modellierung - Statisches Modell

Lösungen zu Übung 3 Objektorientierte Modellierung - Statisches Modell Universität Stuttgart Institut für Automatisierungs- und Softwaretechnik Prof. Dr.-Ing. Dr. h. c. P. Göhner Lösungen zu Übung 3 Objektorientierte Modellierung - Statisches Modell Aufgabe 3. Assoziation

Mehr

Implementierung III. Implementierung IV

Implementierung III. Implementierung IV Übersicht Implementierung III GUI und Verhalten (Teil 2) Implementierung IV Schnittstelle zur Umgebung Integration und Test Alexander Geraldy Softwarepraktikum - Teil: Eingebettete Systeme SoSe 20031 Implementierung

Mehr

Programmieren in Java

Programmieren in Java Programmieren in Java objektorientierte Programmierung 2 2 Zusammenhang Klasse-Datei In jeder *.java Datei kann es genau eine public-klasse geben wobei Klassen- und Dateiname übereinstimmen. Es können

Mehr

Kapitel 6. Vererbung

Kapitel 6. Vererbung 1 Kapitel 6 2 Ziele Das sprinzip der objektorientierten Programmierung verstehen Und in Java umsetzen können Insbesondere folgende Begriffe verstehen und anwenden können: Ober/Unterklassen Subtyping Überschreiben

Mehr

Kapitel 6. Vererbung

Kapitel 6. Vererbung 1 Kapitel 6 2 Ziele Das sprinzip der objektorientierten Programmierung verstehen Und in Java umsetzen können Insbesondere folgende Begriffe verstehen und anwenden können: Ober/Unterklassen Subtyping Überschreiben

Mehr

Java-Schulung Grundlagen

Java-Schulung Grundlagen Java-Schulung Grundlagen Java 2 Standard Edition JDK 5 / 6 31.05.2008 Marcel Wieczorek 1 Themenübersicht Basiswissen Objektorientierung Datentypen Fehlerbehandlung Sonstiges Einführung Klassen, Strings

Mehr

KAPITEL 1 RMI Verteilte Programmierung unter JAVA von Anja Austermann

KAPITEL 1 RMI Verteilte Programmierung unter JAVA von Anja Austermann RMI Verteilte Programmierung unter JAVA von Anja Austermann Da die Sprache Java sehr stark an der Programmierung für das Internet orientiert ist, stellt sie mit RMI einen Mechanismus zur Verfügung, mit

Mehr

Überblick. Class-Objekte. Bietet die Möglichkeit das Laufzeitverhalten von Applikationen zu analysieren und es gegebenenfalls sogar zu beeinflussen

Überblick. Class-Objekte. Bietet die Möglichkeit das Laufzeitverhalten von Applikationen zu analysieren und es gegebenenfalls sogar zu beeinflussen Überblick Bietet die Möglichkeit das Laufzeitverhalten von Applikationen zu analysieren und es gegebenenfalls sogar zu beeinflussen Stubs & Skeletons Aufgabe 2 Tutorial: http://download.oracle.com/javase/tutorial/reflect/index.html

Mehr

Überblick. Beispiel: get()-methodenaufruf am VSBoard aus Übungsaufgabe 1. Analyse einer Methode: java.lang.reflect.method

Überblick. Beispiel: get()-methodenaufruf am VSBoard aus Übungsaufgabe 1. Analyse einer Methode: java.lang.reflect.method Überblick Bietet die Möglichkeit das Laufzeitverhalten von Applikationen zu analysieren und es gegebenenfalls sogar zu beeinflussen Stubs & Skeletons Aufgabe 2 Tutorial: http://docs.oracle.com/javase/tutorial/reflect/index.html

Mehr

Javakurs zu Informatik I. Henning Heitkötter

Javakurs zu Informatik I. Henning Heitkötter Javakurs zu Informatik I Arrays vergleichen Implementieren Sie folgende Methode, die prüft, ob die Elemente der beiden Arrays an jeder Position übereinstimmen: public static boolean identisch(int[] a,

Mehr

Remote- und Server-Programmierung. Dr. Wolfgang Süß Thorsten Schlachter

Remote- und Server-Programmierung. Dr. Wolfgang Süß Thorsten Schlachter Remote- und Server-Programmierung Dr. Wolfgang Süß Thorsten Schlachter Remote Method Invocation (RMI) Servlets WebServices 2 Remote Method Invocation (RMI) Das Remote Method Invocation (RMI)-Framework

Mehr

H.2 Distributed Events

H.2 Distributed Events H Überblick über die 7. Übung H Überblick über die 7. Übung 1 RemoteEvent Remote Events ServiceEvents Basisklasse aller Jini Events package net.jini.core.event; import java.rmi.marshalledobject; Security-Policies

Mehr

Klausur zur Vorlesung Einführung in Verteilte Systeme WS 05/06 Prof. Dr. Odej Kao 30. März 2006

Klausur zur Vorlesung Einführung in Verteilte Systeme WS 05/06 Prof. Dr. Odej Kao 30. März 2006 Klausur zur Vorlesung Einführung in Verteilte Systeme WS 05/06 Prof. Dr. Odej Kao 30. März 2006 Aufkleber Name: Vorname: Matrikel: Studiengang: inkl. DPO4, B/M, Schwerp., Schreiben Sie zunächst Ihren Namen

Mehr

Middleware. im Schweinsgalopp

Middleware. im Schweinsgalopp Middleware im Schweinsgalopp 1 Szenario Unternehmen verwendet SAP als ERP-System wickelt Versand über Dienstleister, hier UPS ab UPS bietet Verfolgung der Lieferung über Web- Schnittstelle Daten im ERP

Mehr

Netzprogrammierung: Java RMI - Remote Method Invocation (Teil 2)

Netzprogrammierung: Java RMI - Remote Method Invocation (Teil 2) Netzprogrammierung: Java RMI - Remote Method Invocation (Teil 2) Robert Tolksdorf und Peter Löhr Überblick 1. Auffinden von.class-dateien 2. Serializable Parameter 3. Sicherheit 4. Code laden übers Web

Mehr

7. Objektorientierte Softwareentwicklung/3. Informatik II für Verkehrsingenieure

7. Objektorientierte Softwareentwicklung/3. Informatik II für Verkehrsingenieure 7. Objektorientierte Softwareentwicklung/3 Informatik II für Verkehrsingenieure Überblick FOLGENDE BEGRIFFE/PRINZIPIEN SOLLTEN BEKANNT SEIN Objekte Klasse Attribute Fähigkeiten ZIEL DER HEUTIGEN LEHRVERANSTALTUNG

Mehr

Eine Klasse beschreibt Objekte mit gleichen Attributen und Methoden.

Eine Klasse beschreibt Objekte mit gleichen Attributen und Methoden. Grundwissen Informatik Objekt Attribut Methoden Als Objekte bezeichnet man alle Gegenstände, Dinge, Lebewesen, Begriffe oder Strukturen unserer Welt ( Autos, Räume, Bakterien, Lehrer, Schüler, Kunden,

Mehr

PRÜFUNG. Grundlagen der Softwaretechnik

PRÜFUNG. Grundlagen der Softwaretechnik Universität Stuttgart Institut für Automatisierungs- und Softwaretechnik Prof. Dr.-Ing. Dr. h. c. P. Göhner PRÜFUNG Grundlagen der Softwaretechnik Name: Matrikelnummer: Note: Prüfungstag: 21.09.2012 Prüfungsdauer:

Mehr

Programmiermethodik. Übung 13

Programmiermethodik. Übung 13 Programmiermethodik Übung 13 Sommersemester 2010 Fachgebiet Software Engineering andreas.scharf@cs.uni-kassel.de Agenda Vorstellung Musterlösung HA9 Mancala Showroom Client/Server Kommunikation in Java

Mehr

Objektorientierte Programmierung Studiengang Medieninformatik

Objektorientierte Programmierung Studiengang Medieninformatik Objektorientierte Programmierung Studiengang Medieninformatik Hans-Werner Lang Hochschule Flensburg Vorlesung 1 15.03.2017 Objektorientierte Programmierung (Studiengang Medieninformatik) Form: Prüfung:

Mehr

Java in Verteilte Systeme - RMI

Java in Verteilte Systeme - RMI In diesem Kursteil Modul 2 : Remote Method Invocation RMI Modul Einleitung Was ist Java RMI? RMI Architektur Übersicht Der Transport Layer Garbage Collection Remote Reference Layer RMI Stubs und Skeletons

Mehr

Programmieren II. Remote-Programmierung. www.kit.edu. Institut für Angewandte Informatik

Programmieren II. Remote-Programmierung. www.kit.edu. Institut für Angewandte Informatik Programmieren II Remote-Programmierung KIT Universität des Landes Baden-Württemberg und nationales Großforschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu Remote-Programmierung Remote Method Invocation

Mehr

Überblick. Middleware - Übung. Model-View-Controller. Entwurfsmuster (Design Patterns)

Überblick. Middleware - Übung. Model-View-Controller. Entwurfsmuster (Design Patterns) Überblick Middleware - Übung Tobias Distler, Michael Gernoth, Rüdiger Kapitza Friedrich-Alexander-Universität Erlangen-Nürnberg Lehrstuhl Informatik 4 (Verteilte Systeme und Betriebssysteme) www4.informatik.uni-erlangen.de

Mehr

Objektorientierte Programmierung

Objektorientierte Programmierung Universität der Bundeswehr Fakultät für Informatik Institut 2 Priv.-Doz. Dr. Lothar Schmitz FT 2006 Zusatzaufgaben Lösungsvorschlag Objektorientierte Programmierung Lösung 22 (Java und UML-Klassendiagramm)

Mehr

Vorlesung "Software-Engineering"

Vorlesung Software-Engineering Vorlesung "Software-Engineering" Rainer Marrone, TUHH, Arbeitsbereich STS Vorige Vorlesung Pflichtenheft (requirements specification document) Charakterisierung von Software-Qualität Detaillierte Anforderungsanalyse

Mehr

Kapitel 6. Vererbung

Kapitel 6. Vererbung Kapitel 6 Vererbung Vererbung 1 Ziele Das Vererbungsprinzip der objektorientierten Programmierung verstehen Und in Java umsetzen können Insbesondere folgende Begriffe verstehen und anwenden können: Ober/Unterklassen

Mehr

JAVA Remote Method Invocation JRMP Tutorial

JAVA Remote Method Invocation JRMP Tutorial JAVA Remote Method Invocation JRMP Tutorial Abteilung Technische Informatik, Institut für Informatik, Universität Leipzig Abteilung Technische Informatik, Wilhelm Schickard Institut für Informatik 11.6.2013

Mehr

3. Konzepte der objektorientierten Programmierung

3. Konzepte der objektorientierten Programmierung 3. Konzepte der objektorientierten Programmierung 3.1 Basiskonzepte 3.2 Generalisierung / Spezialisierung 3.3 Aggregation 3.4 Assoziation 3.5 Nachrichten 3.6 Polymorphismus 3. Konzepte der Objektorientierung

Mehr

5A Kooperation: Lösungen

5A Kooperation: Lösungen 5A Kooperation: Lösungen 5A.1 Wissens- und Verständnisfragen 1.a.) dass nicht auf jedem Computer alle Programme und Daten vorgehalten werden müssen / dass damit auch Geräte auf anderen Rechnerknoten angesprochen

Mehr

CORBA. Beispiel einer Middleware-Plattform. Christian Fass WS 2013/14 Software Engineering: Basistechnologien

CORBA. Beispiel einer Middleware-Plattform. Christian Fass WS 2013/14 Software Engineering: Basistechnologien CORBA Beispiel einer Middleware-Plattform Christian Fass WS 2013/14 Software Engineering: Basistechnologien Allgemeines Common Object Request Broker Architecture Middleware: Vermittelt zwischen Obekten/Prozessen

Mehr

Remote Method Invocation (RMI)

Remote Method Invocation (RMI) Remote Method Invocation (RMI) Hier soll ein Überblick 1 über die RMI-Technologie der Java 2 Plattform gegeben werden. Inhaltsverzeichnis 1.Überblick...3 2.RMI Architektur...6 2.1.Überblick...6 2.2.RMI

Mehr

3 Objektorientierte Konzepte in Java

3 Objektorientierte Konzepte in Java 3 Objektorientierte Konzepte in Java 3.1 Klassendeklarationen Fragen an die Klassendeklaration: Wie heißt die Klasse? Wer darf auf die Klasse und ihre Attribute/Methoden zugreifen? Ist die Klasse eine

Mehr

Einführung in die Programmierung mit Java. Hörsaalübung

Einführung in die Programmierung mit Java. Hörsaalübung Einführung in die Programmierung mit Java Hörsaalübung Folie 1 Grundlagen der Objektorientierung Seit Anfang der Neunzigerjahre Standardmethode der Softwareentwicklung. Die OOP Objektorientierte Programmierung

Mehr

Java-Programmierung mit NetBeans

Java-Programmierung mit NetBeans Java-Programmierung mit NetBeans Klassen, Objekte, Alternativen Dr. Henry Herper Otto-von-Guericke-Universität Magdeburg - WS 2012/13 Grundlegende Definitionen - Objekt Ein Objekt ist allgemein ein Gegenstand

Mehr

Netzprogrammierung: Java RMI - Remote Method Invocation (Teil 1)

Netzprogrammierung: Java RMI - Remote Method Invocation (Teil 1) Netzprogrammierung: Java RMI - Remote Method Invocation (Teil 1) Robert Tolksdorf und Peter Löhr Überblick 1. Fernaufrufbare Objekte 2. Das Objektverzeichnis rmiregistry 3. Parametersemantik Dokumentation

Mehr

Objektorientierte Programmierung

Objektorientierte Programmierung Objektorientierte Programmierung 1 Geschichte Dahl, Nygaard: Simula 67 (Algol 60 + Objektorientierung) Kay et al.: Smalltalk (erste rein-objektorientierte Sprache) Object Pascal, Objective C, C++ (wiederum

Mehr

Internetanwendungstechnik (Übung)

Internetanwendungstechnik (Übung) Internetanwendungstechnik (Übung) JacORB S. Bissell, G. Mühl Technische Universität Berlin Fakultät IV Elektrotechnik und Informatik Kommunikations- und Betriebssysteme (KBS) Einsteinufer 17, Sekr. EN6,

Mehr

Interface. So werden Interfaces gemacht

Interface. So werden Interfaces gemacht Design Ein Interface (=Schnittstelle / Definition) beschreibt, welche Funktionalität eine Implementation nach Aussen anzubieten hat. Die dahinter liegende Algorithmik wird aber der Implementation überlassen.

Mehr

C Java RMI. 1 Java. Objektorientierte Sprache

C Java RMI. 1 Java. Objektorientierte Sprache Java RMI 1 1 Java Objektorientierte Sprache Objekte und andere Datentypen: int, float, boolean, etc. Objektreferenzen Verweise auf Objekte keine Zeiger, Adressen o.ä. Methodenaufruf bei vorhandener Objektreferenz

Mehr

Software Engineering Analyse und Analysemuster

Software Engineering Analyse und Analysemuster Software Engineering Analyse und Analysemuster Prof. Adrian A. Müller, PMP, PSM 1, CSM Fachbereich Informatik und Mikrosystemtechnik 1 Klassendiagramme in der Analyse Im Rahmen der Anforderungsanalyse

Mehr

PRÜFUNG. Grundlagen der Softwaretechnik

PRÜFUNG. Grundlagen der Softwaretechnik Universität Stuttgart Institut für Automatisierungs- und Softwaretechnik Prof. Dr.-Ing. Dr. h. c. P. Göhner PRÜFUNG Grundlagen der Softwaretechnik Musterlösung Name: Matrikelnummer: Note: Prüfungstag:

Mehr

Inhalt: Version 1.7.5

Inhalt: Version 1.7.5 Inhalt: Objekte ohne Methoden Objekte mit einfachen Methoden Objekte und Methoden mit Parametern Objekte und Methoden mit Rückgabewert Objekte mit einem Array als Attribut Beziehungen zwischen Objekten

Mehr

Lösungen zu Übung 3 Objektorientierte Modellierung - Statisches Modell

Lösungen zu Übung 3 Objektorientierte Modellierung - Statisches Modell Universität Stuttgart Institut für Automatisierungstechnik und Softwaresysteme Prof. Dr.-Ing. M. Weyrich Lösungen zu Übung 3 Objektorientierte Modellierung - Statisches Modell Aufgabe 3. Assoziation zwischen

Mehr

Java in Verteilte Systeme

Java in Verteilte Systeme In diesem Kursteil Modul 2 : Remote Method Invocation RMI Modul Einleitung Was ist Java RMI? RMI Architektur Übersicht Der Transport Layer Garbage Collection Remote Reference Layer RMI Stubs und Skeletons

Mehr

Javakurs FSS Lehrstuhl Stuckenschmidt. Tag 3 - Objektorientierung

Javakurs FSS Lehrstuhl Stuckenschmidt. Tag 3 - Objektorientierung Javakurs FSS 2012 Lehrstuhl Stuckenschmidt Tag 3 - Objektorientierung Warum Objektorientierung Daten und Funktionen möglichst eng koppeln und nach außen kapseln Komplexität der Software besser modellieren

Mehr

RMI. Wir haben. Komponenten auf einem Rechner. Remote Method Invocation

RMI. Wir haben. Komponenten auf einem Rechner. Remote Method Invocation RMI Remote Method Invocation Wir haben Komponenten auf einem Rechner Komp1 Komp2 zwei Rechner Wir wollen Komp1 Komp2 TCP/IP aber wie? Fallstudie Chat Einfluss der Architektur auf den Entwurf oder Man kann

Mehr

Problemstellung. Informatik B - Objektorientierte Programmierung in Java. Vorlesung 24: Reflection 1. IDE und automatische Tests.

Problemstellung. Informatik B - Objektorientierte Programmierung in Java. Vorlesung 24: Reflection 1. IDE und automatische Tests. Universität Osnabrück 1 Problemstellung 3 - Objektorientierte Programmierung in Java Vorlesung 24: Reflection 1 SS 2006 Prof. Dr. Frank M. Thiesing, FH Osnabrück Um ein Objekt anzulegen, eine seiner Methoden

Mehr

Implementierung IV: Schnittstelle zur Umgebung. und. Integration und Test

Implementierung IV: Schnittstelle zur Umgebung. und. Integration und Test Sommersemester 2003 Implementierung IV: Schnittstelle zur Umgebung und Integration und Test 34 Aufgabe 6 Implementierung IV: Schnittstelle zur Umgebung und Integration und Test Umfang: 2 Wochen Punkte:

Mehr

Benutzerauthentifizierung und Zugriffsschutz mit JAAS

Benutzerauthentifizierung und Zugriffsschutz mit JAAS Benutzerauthentifizierung und Zugriffsschutz mit JAAS Werner Eberling werner.eberling@mathema.de www.mathema.de Übersicht Altbekanntes kurz erwähnt Java Security Des Kaisers neue Kleider JAAS Zu Ihren

Mehr

Objektorientierte Programmierung Studiengang Medieninformatik

Objektorientierte Programmierung Studiengang Medieninformatik Objektorientierte Programmierung Studiengang Medieninformatik Hans-Werner Lang Hochschule Flensburg Vorlesung 5 12.04.2017 Was bisher geschah... Objektorientierte Programmierung Klassen und Objekte, Attribute

Mehr

Klausur: Java (Liste P)

Klausur: Java (Liste P) Klausur: Java (Liste P) WS05/06 Erlaubte Hilfsmittel: Gebundene! Unterlagen (Skript mit Anmerkungen, eigene Mitschrift) und maximal ein Buch. Bitte keine losen Blätter. Lösung ist auf den Klausurbögen

Mehr

Software Engineering Klassendiagramme weiterführende Konzepte

Software Engineering Klassendiagramme weiterführende Konzepte Software Engineering Klassendiagramme weiterführende Konzepte Prof. Adrian A. Müller, PMP, PSM 1, CSM Fachbereich Informatik und Mikrosystemtechnik 1 Klassenattribut: static Implementierung in Java public

Mehr