6 Implementierung komplexer Systeme. 6.1 Verteilte objektorientierte Systeme

Größe: px
Ab Seite anzeigen:

Download "6 Implementierung komplexer Systeme. 6.1 Verteilte objektorientierte Systeme"

Transkript

1 6 Implementierung komplexer Systeme 6.1 Verteilte objektorientierte Systeme Analyse Entwurf Implementierung Test, Integration Wartung.KVGTCVWTÂ $CN\GTVÂ$CPFÂÂ.'Â Offene verteilte Systeme Situation: Heterogene, vernetzte Computersysteme: heterogene Hardware, Betriebssysteme, Programmiersprachen, Formate, Netztechnologien Anwendungen im Normalfall verteilt» Client/Server-Architekturen Ziele: Portabilität (Objektcode, Quellcode, Entwurf) Interoperabilität Lokations- und Netzwerk-Transparenz Hilfsmittel: Standards für offene Systeme Eindeutige Definition von Schnittstellen Flexible Erweiterung um neue Schnittstellen Seite 1

2 Realisierung von Client/Server-Systemen Sockets ("Peer-to-Peer"-Kommunikation über den TCP/IP Stack) Niedriges Abstraktionsniveau Plattform-Transparenz (z.b. Java Package java.net) Remote Procedure Call (RPC) Höheres Abstraktionsniveau als Sockets (Prozedurebene) Einbettung in prozedurale Programmiersprachen (z.b. C) Realisierung von synchronen entfernten Prozeduraufrufen Java Remote Methode Invocation (RMI) Hohes Abstraktionsniveau (Objektebene) Java-spezifischer Mechanismus (Java Package java.rmi) Ort- und Plattform-Transparenz "Middleware" für verteilte Objekte (CORBA, Microsoft DCOM) Hohes Abstraktionsniveau (Objektebene) Transparenz von Ort und Programmiersprache Bei CORBA: auch Plattform-Transparenz Standards der Object Management Group Object Management Group (OMG): Zusammenschluß von Anbietern und Anwendern objektorientierter Softwaretechnologie Gegründet 1989, mehr als 600 Mitglieder Standards und Spezifikationen, aber mit Verpflichtung zur kommerziellen Implementierung Middleware für verteilte objektorientierte Anwendungen (CORBA) Interoperabilität verschiedenener CORBA-Implementierungen ist Realität De-facto-Standards Offizielle Standardisierungsgremien, z.b. ISO:» vergleichsweise schwerfällig Firmen- Standards, z.b. Microsoft OLE/DCOM:» nicht wirklich offen, d.h. plattformunabhängig Seite 2

3 Object Management Architecture (OMA) Finanzen Finanzen Telekommunikation Electronic Electronic Commerce Commerce Nicht standardisiert: Anwendungsspezifische Objekte Nutzerschnittstelle Informationsmanagement Systemmanagement Vertikale CORBAfacilities Objekte der Anwendung Horizontale CORBAfacilities Object Request Broker (ORB) - Objektbus Lifecycle Lifecycle Event Event Naming Naming Persistence Persistence Transactions Transactions Objektdienste (CORBAservices) Externalization Security Security Time Time Properties Properties Licensing Licensing Dienstanforderungen (object requests) Client-Objekte senden Anforderungen (requests) an abstrakte Referenzen, über die sie an Objektimplementierungen (servants) zugestellt werden. Bestandteile einer Anforderung: Angabe des angesprochenen Server-Objekts (Objekt-Referenz) Name der angeforderten Operation Kommunikationsart» synchron, asynchron oder abgesetzt synchron Ein- und Ausgabeparameter (optional) Ausnahmebedingungen (optional) Kontextangaben (z.b. Ort des Clients) Schnittstellen: Beschreibung von Anforderungstypen Zusammenfassung in Schnittstellen Interface Definition Language (IDL) Seite 3

4 Statischer Aufruf: Stubs und Skeletons stub und skeleton vermitteln zwischen der universellen IDL und der konkreten Programmiersprache. stub: wird vom Client-Code aufgerufen skeleton: ruft den Servant-Code auf Objekt in "Client"-Rolle Objekt in "Servant"-Rolle stub skeleton Object Request Broker (ORB) "Suggestion" einer einheitlichen Schnittstelle über IDL Generierung von Stubs und Skeletons (statisch) Schnittstellen- Definition in IDL Client-Code IDL-Compiler Servant-Code IDL stub (Code) IDL skeleton (Code) Übersetzen und Binden Übersetzen und Binden Client stub ORB Servant skeleton Seite 4

5 Proxy-Entwurfsmuster in CORBA Proxy Original Client- Objekt Servant- Objekt Original Stub Proxy Skeleton Proxy Proxy Object Request Broker (ORB) ORB-Architektur in CORBA Client- Objekt Servant- Objekt dynamisch statisch IDL Stub (statisch) DII ORB interface IDL Skeleton (statisch) object adapter DSI Object request Broker (ORB) core Interface Repository Implementation Repository Stubs Static Invocation Interface (=SII) DII = Dynamic Invocation Interface Skeletons Static Skeleton Interface (=SSI) DSI = Dynamic Skeleton Interface Seite 5

6 Objekt-Adapter Aufgaben eines Objektadapters: Zustellung von Requests an registrierte Objekte Erzeugung von Objekten und Referenzen Aktivierung/Deaktivierung von Objekten Beispiele: Basic Object Adapter (BOA)» bis CORBA 2.1» proprietäre Realisierungen Portable Object Adapter (POA)» ab CORBA 2.2 andere, z.b. Adapter für DBMS Statische und Dynamische Schnittstellen Statische Aufrufschnittstelle (Static Invocation Interface, SII) Festlegung der Operation (und Typinformation) zur Übersetzungszeit (aber dynamische Bindung an Objektinstanzen) Generierung von stubs Dynamische Aufrufschnittstelle(Dynamic Invocation Interface, DII): Festlegung der Operation und Typinformation zur Laufzeit Flexibler in der Kommunikationsart (auch "abgesetzt synchron") Statische Skeleton-Schnittstelle (Static Skeleton Interface, SSI) Festlegung der Operation (und Typinformation) zur Übersetzungszeit Generierung von skeletons Dynamische Skeleton-Schnittstelle (Dynamic Skeleton Interface, DSI) Bereitstellung eines flexiblen Skeletons Analyse von Operation, Parametern, Typinformation zur Laufzeit Unabhängige Wahl: SII/DII (Client), SSI/DSI (Servant) Seite 6

7 Schnittstellen-Spezifikation mit IDL Interface Definition Language (IDL): Spezifikation von Schnittstellen für CORBA Orientiert an C++, aber sprachunabhängig Streng getypt (sprachunabhängig) Grundeinheit: interface ähnlich class (umfaßt öffentliche Attribute und Operationen) Vererbung Module zur Gruppierung von Interfaces Syntax von Operationen: Name, Typ und Art (in, out, inout) für alle Parameter Ergebnistyp Kommunikationsart (oneway) Ausnahmesituationen (raises exception) Kontextangaben IDL: Datentypen Einfache Datentypen Strukturierte Datentypen Ganzzahltypen» short, long, long long» signed und unsigned Gleitpunkttypen» float, double, long double, fixed char, wchar, boolean, octet Any CORBA Objektreferenz Value-Typ (Objekte als Werte) Verbunde (struct) Vereinigung Aufzählung Sequenzen Strings Felder Seite 7

8 IDL: Beispiel module BeispielModul { struct Adresse { string strasse; string plz; string ort;}; interface Person { attribute string name; readonly attribute string vorname; readonly attribute long geburtsjahr; attribute Adresse anschrift; typedef sequence <Person> PersonListe; attribute PersonListe Bekannte; long berechnelebensjahre (in long aktjahr); void berechnelebensjahrep (in long aktjahr, out long lebensjahre); }; // Interface }; // Modul IDL-Sprachbindungen Standardisierte Sprachbindungen Abbildung der IDL-Konstrukte auf spezifische Konstrukte der Programmiersprache IDL-Sprachbindungen existieren u.a. für:» C, C++, Smalltalk, Ada, COBOL, Java IDL Compiler: IDL Compiler generiert automatisch Stubs und Skeletons Optional: Generierung von "Templates" (Vorlagen für die Objektimplementierung) Übertragung von Schnittstellen in das Interface Repository Seite 8

9 Abbildung IDL-Programmiersprache Abbildung von Schnittstellen und Operationen C:» Keine direkte Abbildung von Schnittstellen (Schnittstellenname wird in Funktionsname übernommen, Parameter vom Schnittstellentyp ist erster Parameter der Funktionen einer Schnittstelle)» Operationen werden Funktionen C++:» Module werden auf C++ Namespaces abgebildet» Schnittstellen auf Klassen» Operationen auf Methoden Java:» Module werden auf Java Packages abgebildet» Schnittstellen auf öffentliche Java Schnittstellen sowie Helperund Holder Klassen in Java» Operationen auf Methoden Java-Bindung: Beispiel // Person.java package BeispielModul; public interface Person extends org.omg.corba.object { public void name(java.lang.string name); public java.lang.string name(); public java.lang.string vorname(); public int geburtsjahr(); public void anschrift (BeispielModul.Adresse anschrift); public BeispielModul.Adresse anschrift(); public void Bekannte (BeispielModul.Person[] Bekannte); public BeispielModul.Person[] Bekannte(); public int berechnelebensjahre(int aktjahr); public void berechnelebensjahrep (int aktjahr, org.omg.corba.intholder lebensjahre); } Seite 9

10 Zähler-Beispiel: IDL-Schnittstelle // Counter.idl interface Counter { void count (); void countn (in long n); long getcount(); void getcountp(out long count); }; // CounterFactory.idl #include "Counter.idl" interface CounterFactory { Counter createcounter(); }; Zähler-Beispiel: Stubs/Skeletons erzeugen Kommandos: idl2java Counter.idl idl2java CounterFactory.idl Erzeugte Dateien (u.a.): <IDL-Schnittstelle>.java <IDL-Schnittstelle>Helper.java <IDL-Schnittstelle>Holder.java Java-Interface Nützliche Hilfsoperationen Hilfsklasse für Parameter _st_<idl-schnittstelle>.java _<IDL-Schnittstelle>ImplBase.java Stub-Code Skeleton-Code Seite 10

11 Zähler: Java-Schnittstelle und "Helper" // Counter.java public interface Counter extends org.omg.corba.object { public void count(); public void countn( int n ); public int getcount(); public void getcountp( org.omg.corba.intholder count ); } // CounterHelper.java abstract public class CounterHelper { public static Counter narrow (org.omg.corba.object object) {//...} public static Counter bind (org.omg.corba.orb orb, java.lang.string name) { //... } // weitere Methoden } Zähler: "Holder"-Klasse // CounterHolder final public class CounterHolder implements org.omg.corba.portable.streamable { public Counter value; public CounterHolder() { }; public CounterHolder(Counter value) { this.value = value; } public void _read (org.omg.corba.portable.inputstream input) { value = CounterHelper.read(input); } public void _write (org.omg.corba.portable.outputstream output) { CounterHelper.write(output, value);} public org.omg.corba.typecode _type() { return CounterHelper.type(); } } Seite 11

12 Zähler-Beispiel: Stub und Skeleton // _st_counter.java public class _st_counter extends org.omg.corba.portable.objectimpl implements Counter { //... // Stub-Implementierung public void count() {//...} //... } // _CounterImplBase.java abstract public class _CounterImplBase extends org.omg.corba.portable.skeleton implements Counter { // Skeleton-Implementierung } Zähler: Servant-Implementierung // CounterImpl.java public class CounterImpl extends _CounterImplBase { private int counter=0; } /** Construct a persistently named object. */ public CounterImpl(java.lang.String name) {super(name);} /** Construct a transient object. */ public CounterImpl() {super();} public void count() {counter++;} public void countn(int n) {counter=counter+n;} public int getcount() {return counter;} public void getcountp(org.omg.corba.intholder count) { count.value=counter;} Seite 12

13 Interaktion von ORBs Client Servant ORB A Kommunikations- Netz ORB B General Inter-ORB Protocol (GIOP) Common Data Representation (CDR) für IDL-Datentypen Interoperable Object References (IOR) Selbstbeschreibende Profile Internet Inter-ORB Protocol (IIOP) Environment-Specific Inter-ORB Protocols (ESIOPs) Derzeit nur DCE/ESIOP ORB/ORB-Brücken mit DSI und DII Spezielle Objektdienste (CORBAservices) CORBAservices vervollständigen die Funktion des ORB Beispiele: Namensdienst (naming service) Such- und Vermittlungsdienst (object trading service) Objektverwaltung (life cycle service) Ereignisverwaltung (event service) Persistenzdienst (persistent object service) Transaktionsdienst (transaction service) Objektauslagerung (externalization service) Abfragedienst (query service) Lizenzdienst (licensing service) Eigenschaftsverwaltung (property service) Zeitdienst (time service) Sicherheitsdienst (security service) Seite 13

14 CORBA Service: Naming Service (1) Syntaxunabhängiger Namensdienst Zuordnen eines aussagekräftigen Namens zu einer Objektreferenz Anordnung und Verwaltung von Namen in Namensräumen (Schnittstelle: NamingContext), in denen jeder Name jeweils eindeutig ist (Bildung von Namenshierarchien). Durchsuchen von Namensräumen (Schnittstelle: BindingIterator) Notwendige Komponenten: Client- Objekt Servant- Objekt Object Request Broker (ORB) - Objektbus Name Server CORBA Service: Naming Service (2) Beispiel für Interaktion Servant-Objekt und Name Server: : Servant-Objekt cf : Counter : ORB MyNameSpace : Factory NamingContext MyFactories : NamingContext MyNameSpace=resolve_initial_references ("NameService") n=erzeuge_namen MyFactories=bind_new_context(n:Name) bind(n:name,cf) Seite 14

15 CORBA Service: Naming Service (3) Beispiel für Interaktion Client-Objekt und Name Server: : Client-Object : ORB MyNameSpace : NamingContext cf : Counter Factory MyNameSpace=resolve_initial_references ("NameService") n=erzeuge_namen resolve(n:name) cf anforderung() Evolution der OMA 1991: CORBA Core 1.0 Architektur, Kommunikation Interoperabilität 1995: CORBA : CORBA : CORBAservices Grunddienste für objektorientierte Anwendungen seit 1995: CORBAfacilities Dienste für spezielle Anwendungsbereiche Allgemeine übergreifende Systemdienste Seite 15

16 Neuere CORBA-Versionen (2.4 und 3.0) Neuigkeiten in CORBA (1999): Portable Object Adapter» bessere Portierbarkeit von Applikationen zwischen ORBs verschiedener Anbieter Weitere Kommunikationsarten» Callback» Polling "Objects by Value"» Mobile Objekte "Quality of Service"» Beeinflussung von Transport und Weiterleitung von Anforderungen CORBA: Perspektiven Chancen: Flexible, plattformunabhängige, heterogene Systeme Steigerung des Abstraktionsniveaus (z.b. von Datenbankanbindung zur Objektverwaltung) Einbindung von Altsystemen möglich Probleme: Tempo der Standardisierung und Realisierung Performance bestehender Implementierungen Angriffe durch speziellere Systeme (weniger Eleganz, höhere Leistung) Bruch mit bewährten Konzepten (z.b. SQL) Völlige Transparenz nicht immer erwünscht Seite 16

Hello World from CORBA

Hello World from CORBA Hello World from CORBA ein erster Überblick Aufruf einer Objekt-Methode Client gettemperature() Thermometer Objekt- Implementation Thermometer th = new Thermometer(); double t = th.gettemperature(); th

Mehr

Modul Software Komponenten 10 Komponentenarchitektur

Modul Software Komponenten 10 Komponentenarchitektur Modul Software Komponenten 10 Komponentenarchitektur Teil 3 Peter Sollberger Eine erste CORBA Anwendung Inhalt Dienstag, 4. November Object Request Broker CORBA Architektur und Komponenten (Teil 1) Übung:

Mehr

3.2 Der CORBA-Standard Common Object Request Broker Architecture

3.2 Der CORBA-Standard Common Object Request Broker Architecture 3.2 Der CORBA-Standard Common Object Request Broker Architecture (Bildquelle: OMG) Kapitel 3.2: Vorlesung CORBA 1 CORBA Middleware im Ueberblick G CORBA = Common Object Request Broker Architecture. Standard

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

CORBA. Systemprogrammierung WS 2006-2007

CORBA. Systemprogrammierung WS 2006-2007 CORBA Systemprogrammierung WS 2006-2007 Teilnehmer: Bahareh Akherattalab Babak Akherattalab Inhaltsverzeichnis: Verteilte Systeme Vergleich zwischen lokale und verteilte Systeme Verteilte Anwendungen CORBA

Mehr

CORBA-Konzept. Ziele. Common Object Request Broker Architecture CORBA. Plattformunabhängige Kommunikation Transparente Verteilung von Objekten

CORBA-Konzept. Ziele. Common Object Request Broker Architecture CORBA. Plattformunabhängige Kommunikation Transparente Verteilung von Objekten CORBA-Konzept Ziele Common Object Request Broker Architecture CORBA Plattformunabhängige Kommunikation Transparente Verteilung von Objekten CORBA-Konzept Object Management Group Spezifiziert den CORBA-Standard

Mehr

explizite, orthogonale Interaktion Verteilte Anwendungen und Middleware uniforme / nicht-uniforme Interaktion implizite, nicht-orthogonale Interaktion

explizite, orthogonale Interaktion Verteilte Anwendungen und Middleware uniforme / nicht-uniforme Interaktion implizite, nicht-orthogonale Interaktion Verteilte Anwendungen und Klassifikation von Interaktionsformen explizit implizit orthogonal nicht-orthogonal uniform nicht-uniform transparent nicht-transparent explizite, orthogonale Interaktion weit

Mehr

COMMON OBJECT REQUEST BROKER ARCHITECTURE. Dmytro Pyvovar Otto-von-Guericke Universität Magdeburg

COMMON OBJECT REQUEST BROKER ARCHITECTURE. Dmytro Pyvovar Otto-von-Guericke Universität Magdeburg COMMON OBJECT REQUEST BROKER ARCHITECTURE Dmytro Pyvovar Otto-von-Guericke Universität Magdeburg Gliederung Motivation Was ist CORBA? Object Management Architecture (OMA ) Interface Definition Language

Mehr

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

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

Mehr

Grundlagen und Implementation. Jan Kraft

Grundlagen und Implementation. Jan Kraft Grundlagen und Implementation Jan Kraft Gliederung 1 die OMG 2 Was ist CORBA? 3 Funktionsweise 3.1 die Interface Definition Language 3.2 Objekt Adapter 3.3 weitere Komponenten des ORB 3.4 InterORB Protokolle

Mehr

CORBA. Eine kurze Einführung. Common Object Request Broker Architecture. Ying Lu

CORBA. Eine kurze Einführung. Common Object Request Broker Architecture. Ying Lu CORBA Common Object Request Broker Architecture Eine kurze Einführung Ying Lu Verlauf der Präsentation Was ist CORBA CORBA-Architektur Ein Beispiel CORBA im Einsatz CORBA im Vergleich Was ist CORBA Begriffe

Mehr

SOAP Integrationstechnologie für verteilte Middlewarearchitekturen?

SOAP Integrationstechnologie für verteilte Middlewarearchitekturen? SOAP Integrationstechnologie für verteilte Middlewarearchitekturen? Großer Beleg Christian Wurbs Zwischenbericht http://www.inf.tu-dresden.de/~cw6 cw6@inf.tu-dresden.de Überblick 2 Aufgabenstellung CORBA

Mehr

Komponentenmodelle II

Komponentenmodelle II Komponentenmodelle II DCOM / CORBA Detlef Streitferdt Technische Universität Ilmenau DCOM Architektur Client Proxy Stub Component CoCreateInstance Security Provider DCE RPC Protocol Stack Security Provider

Mehr

CORBA (Überblick, IDL)

CORBA (Überblick, IDL) Friedrich-Alexander-Universität Erlangen-Nürnberg Konzepte von Betriebssystemkomponenten CORBA (Überblick, IDL) Radu Vatav 1. Geschichte Die Object Management Group (OMG), 1989 gegründet, hatte das Ziel

Mehr

Corba. Systemprogrammierung WS 08 / 09. 21.01.09 Roginer - Fontana - Heinisch 1

Corba. Systemprogrammierung WS 08 / 09. 21.01.09 Roginer - Fontana - Heinisch 1 Corba Systemprogrammierung WS 08 / 09 21.01.09 Roginer - Fontana - Heinisch 1 Gliederung Definition Historie RPC Eigenschaften Architektur IDL-Beispiel Anwendungen OMA Services Facilities Client-Server

Mehr

Common Object Request Broker Architecture (CORBA)

Common Object Request Broker Architecture (CORBA) 6. CORBA und CCM Peter Sturm Universität Trier Common Object Request Broker Architecture (CORBA) Standard der Object Management Group (OMG) 1991 CORBA 1.1 1994 CORBA 2.0 seit ca. 2001 CORBA 3.0 OMG Herstellerübergreifendes

Mehr

CORBA: Common Object Request Broker Architecture. Interoperabilität? CORBA die Idee. Die Object Management Group

CORBA: Common Object Request Broker Architecture. Interoperabilität? CORBA die Idee. Die Object Management Group CORBA: Common Request Broker Architecture Interoperabilität? Middleware-Architektur-Spezifikation der Management Group (OMG) Überblick: Die Management Group (OMG) Das Objektmodell der OMG Die Management

Mehr

Middleware. Einführung in CORBA. Middlewareplattform CORBA. CORBA: Eigenschaften

Middleware. Einführung in CORBA. Middlewareplattform CORBA. CORBA: Eigenschaften Middleware Einführung in CORBA Kay Römer Institut für Pervasive Computing ETH Zürich Infrastruktur für verteilte Systeme Unterstützt Enwickler bei Behandlung der Probleme verteilter Systeme Erleichtert

Mehr

Verteilte objektorientierte Programmierung am Beispiel CORBA

Verteilte objektorientierte Programmierung am Beispiel CORBA Verteilte objektorientierte Programmierung am Beispiel CORBA Karsten Morisse km@kmorisse.de Vortrag FH Bielefeld 18. Juni 2002 Überblick 1. Verteilte Systeme 2. CORBA - Common Object Request Broker Architecture

Mehr

Modul Software Komponenten 10 Komponentenarchitektur

Modul Software Komponenten 10 Komponentenarchitektur Modul Software Komponenten 10 Komponentenarchitektur Teil 2 Peter Sollberger Die verschiedenen Middleware - Ansätze Inhalt Montag, 3. November Remote Procedure Call (RPC) Fehlersemantiken Remote Message

Mehr

Kap. 3 Verteilte Objektverwaltung

Kap. 3 Verteilte Objektverwaltung Kap. 3 Verteilte Objektverwaltung 3.1 Einführung in die verteilte Objektverwaltung (Distributed Object Management, DOM) Anforderungen Kurzübersicht Java RMI Microsoft COM+ CORBA 3.2 Der CORBA-Standard

Mehr

Client-Server-Praktikum: Aufgabe 1 CORBA Naming Service

Client-Server-Praktikum: Aufgabe 1 CORBA Naming Service Client-Server-Praktikum: Aufgabe 1 CORBA Naming Service CORBAservices sind eine Sammlung von Diensten auf Systemebene, die CORBA-Objekte um mehrere nützliche Eigenschaften ergänzen bzw. den Umgang mit

Mehr

CORBA & CCM. )bersicht <? > CORBA CCM. Abschluss. CORBA :: Motivation. von Malte B. Blanken. CORBA :: Was ist das? Open Source Produkte

CORBA & CCM. )bersicht <? > CORBA CCM. Abschluss. CORBA :: Motivation. von Malte B. Blanken. CORBA :: Was ist das? Open Source Produkte CA :: Motivation CA & CCM von Malte B. Blanken Mr. X hat einen Windows!Server. Auf diesem bietet er einen Dienst an, welcher auf Anfrage die Zeichenkette "Das Leben ist sch#n!!$ ausgibt. Dieser Dienst

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

Client/Server-Systeme

Client/Server-Systeme Client/Server-Systeme Prof. Dr.-Ing. Wilhelm Spruth SS 2005 Teil 15 CORBA cs 1000 ww6 wgs 05-97 Wiederverwendbarkeit von Code Vorbild: Entwurf/Bau einer Brücke im Bauingenieurwesen Objekttechnologie ermöglicht

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

CORBA Implementierung von Client und Server

CORBA Implementierung von Client und Server CORBA Implementierung von Client und Server J. Heinzelreiter WS 2003/04 Implementierung des Clients Initialisierung und Freigabe des ORBs. Mapping von Interfaces. Behandlung von Objektreferenzen. Verwaltung

Mehr

Praktikum aus Softwareentwicklung 2. Web Services. Java Praktikum SS 2010 Gerald.Ehmayer@borland.com

Praktikum aus Softwareentwicklung 2. Web Services. Java Praktikum SS 2010 Gerald.Ehmayer@borland.com Web Services Java Praktikum SS 2010 Gerald.Ehmayer@borland.com 1 Web Services Einführung Definition, Eigenschaften, Anwendungen... JAX-RPC Überblick, Architektur... JAX Übersicht, Architektur Java Praktikum

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

E CORBA. 1 Standard. 2 Motivation. 3 Object Management Architecture, OMA. 1 Architekturen für verteilte Objekte. 3 Architekturen für verteilte Objekte

E CORBA. 1 Standard. 2 Motivation. 3 Object Management Architecture, OMA. 1 Architekturen für verteilte Objekte. 3 Architekturen für verteilte Objekte 1 Standard CORBA CORBA = Common Object Request Broker Architecture plattformunabhängige Middleware-Architektur für verteilte Objekte OMG = Object Management Group Standardisierungsorganisation mit etwa

Mehr

Multiuser Client/Server Systeme

Multiuser Client/Server Systeme Multiuser /Server Systeme Christoph Nießner Seminar: 3D im Web Universität Paderborn Wintersemester 02/03 Übersicht Was sind /Server Systeme Wie sehen Architekturen aus Verteilung der Anwendung Protokolle

Mehr

Corba. Common Object Request Broker Architecture. Von: Oliver Spiegel SoSem 2004. Seminar: Komponentenorientierte Softwareentwicklung

Corba. Common Object Request Broker Architecture. Von: Oliver Spiegel SoSem 2004. Seminar: Komponentenorientierte Softwareentwicklung Corba Common Object Request Broker Architecture Von: Oliver Spiegel SoSem 2004 Überblick Client/Server Technik Integration von bestehenden Softwaresystemen und Anwendungen Java-Unterstützung, um mobile,

Mehr

Web-Services Implementierung mit Java

Web-Services Implementierung mit Java Web-Services Implementierung mit Java J. Heinzelreiter WS 2004/05 Java-APIs für Web-Services (1) Anwendungs-Code JAXR JAXM JAX-RPC SAAJ SOAP/SwA JWSDL WSDL XML/XML-Schema Web-Services/Java - 2 Java-APIs

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

Szenario 3: Service mit erweiterter Schnittstelle

Szenario 3: Service mit erweiterter Schnittstelle 2. Hintergrundverarbeitung in Android: Services und Notifications Szenarien für lokale Services Szenario 3: Service mit erweiterter Schnittstelle Ein Service bietet zusätzliche Methoden an, über die sich

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

Client-Server-Praktikum: Aufgabe 1 CORBA

Client-Server-Praktikum: Aufgabe 1 CORBA Client-Server-Praktikum: Aufgabe 1 CORBA In diesem Tutorial werden Sie die CORBA-Spezifikation kennenlernen und grundlegendes Wissen darüber sammeln. Am Ende des Tutorials sollten Sie in der Lage sein,

Mehr

Client/Server-Systeme

Client/Server-Systeme Fachbereich Informatik Projektgruppe KOSI Kooperative Spiele im Internet Client/Server-Systeme Vortragender Jan-Ole Janssen 26. November 2000 Übersicht Teil 1 Das Client/Server-Konzept Teil 2 Client/Server-Architekturen

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

Client/Server-Systeme

Client/Server-Systeme Client/Server-Systeme Prof. Dr.-Ing. Wilhelm G. Spruth SS 2005 Teil 16 RMI, DCOM, Webservices cs 1100 ww6 sch 05-97 Remote Method Invocation (RMI) JVM JVM Client Server Stub Java Remote Skeleton Method

Mehr

Verteilte objektorientierte Programmierung am Beispiel CORBA. Dr. Christian Schröder Telelogic Deutschland GmbH

Verteilte objektorientierte Programmierung am Beispiel CORBA. Dr. Christian Schröder Telelogic Deutschland GmbH Verteilte objektorientierte Programmierung am Beispiel CORBA Dr. Christian Schröder Telelogic Deutschland GmbH Agenda 1. Was versteht man unter einem verteilten System? 2. Was ist CORBA? 3. Wie funktioniert

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

Anmerkung: Teile aus Quellen der OMG. Verkauf Engineering Rechnungswesen

Anmerkung: Teile aus Quellen der OMG. Verkauf Engineering Rechnungswesen 13.5 CORBA Anmerkung: Teile aus Quellen der OMG Das Geschäftsmodell Verkauf Engineering Rechnungswesen Versand Registratur Herstellung Finanzen Jedes Programm ist ein Modell eines Teils des Gesamtunternehmens

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

Java RMI, CORBA und Firewalls

Java RMI, CORBA und Firewalls Java RMI, CORBA und s Lehrstuhl für Datenverarbeitung falk@ei.tum.de Verteilte Objekte s Probleme Lösungsmöglichkeiten Konkrete Lösungen Verteilte Objekte Client mehrere Objekte Methoden-Aufruf Antwort

Mehr

CORBA - Übersicht CORBA. - Common Object Request Broker Architecture

CORBA - Übersicht CORBA. - Common Object Request Broker Architecture CA - Common Object Request Broker Architecture - erste Version 1991: CA 1.1 eine Architektur, - CA 2.0 (1996, Interoperabilität: IIOP) kein Produkt! - CA 3.0 (2002, keine vollständig konforme Produkte)

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

Übung 1 mit C# 6.0 MATTHIAS RONCORONI

Übung 1 mit C# 6.0 MATTHIAS RONCORONI Übung 1 mit C# 6.0 MATTHIAS RONCORONI Inhalt 2 1. Überblick über C# 2. Lösung der Übung 1 3. Code 4. Demo C# allgemein 3 aktuell: C# 6.0 mit.net-framework 4.6: Multiparadigmatisch (Strukturiert, Objektorientiert,

Mehr

Eclipse Equinox als Basis für Smart Client Anwendungen. Christian Campo, compeople AG, 5.7.2007 Java Forum Stuttgart 2007

Eclipse Equinox als Basis für Smart Client Anwendungen. Christian Campo, compeople AG, 5.7.2007 Java Forum Stuttgart 2007 Eclipse Equinox als Basis für Smart Client Anwendungen Christian Campo, compeople AG, 5.7.2007 Java Forum Stuttgart 2007 Übersicht Definition / Architektur Smart Client Smart Client mit RCP / Equinox Gesamtfazit

Mehr

Mainframe Internet Integration. Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth SS2013. Java Remote Method Invocation Teil 1

Mainframe Internet Integration. Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth SS2013. Java Remote Method Invocation Teil 1 UNIVERSITÄT LEIPZIG Mainframe Internet Integration Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth SS2013 Java Remote Method Invocation Teil 1 Object Request Broker el0100 copyright Abt. Technische

Mehr

Client/Server-Systeme

Client/Server-Systeme Client/Server-Systeme Prof. Dr.-Ing. Wilhelm Spruth SS 2004 Teil 14 CORBA cs 1000 ww6 wgs 05-97 Wiederverwendbarkeit von Code Vorbild: Entwurf/Bau einer Brücke im Bauingenieurwesen Objekttechnologie ermöglicht

Mehr

ObjectBridge Java Edition

ObjectBridge Java Edition ObjectBridge Java Edition Als Bestandteil von SCORE Integration Suite stellt ObjectBridge Java Edition eine Verbindung von einem objektorientierten Java-Client zu einer fast beliebigen Server-Komponente

Mehr

Java Beans (22.02.2001)

Java Beans (22.02.2001) Component Based Software Development Java Beans (22.02.2001) Stefan Jäger Robert Kalcklösch Veranstalter: M. Bittner W. Koch Inhalt Einführung in Java Die Java Beans Einsatz und Entwicklung von Beans Enterprise

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

Wiederholung: Beginn

Wiederholung: Beginn B) Webserivces W3C Web Services Architecture Group: "Ein Web Service ist eine durch einen URI eindeutige identifizierte Softwareanwendung, deren Schnittstellen als XML Artefakte definiert, beschrieben

Mehr

Programmierung mit Komponenten

Programmierung mit Komponenten Programmierung mit Komponenten Andreas Zeller Lehrstuhl für Softwaretechnik Universität des Saarlandes, Saarbrücken 2006-01-16 Grundidee: Teile und Herrsche Das Aufteilen eines Ganzen in wohldefinierte

Mehr

7 Assemblies. Anwendungen (.exe) bzw. Anwendungskomponenten (.dll) für.net Portable Execution (PE) Files

7 Assemblies. Anwendungen (.exe) bzw. Anwendungskomponenten (.dll) für.net Portable Execution (PE) Files 7 Assemblies 8 Virtual Execution System VES Anwendungen (.exe) bzw. Anwendungskomponenten (.dll) für.net Portable Execution (PE) Files Teil der CLR Class Loader Metadaten (Manifest) zur Selbstbeschreibung

Mehr

7.1.1 Grundzüge der Fernaufruf-Implementierung

7.1.1 Grundzüge der Fernaufruf-Implementierung 7.1.1 Grundzüge der Fernaufruf-Implementierung = Aufrufbeziehung Aufrufer Vertreter (proxy, client stub) Fernaufrufdienst A d a p t e r Treiber (skeleton, server stub) Fernaufrufdienst Aufgerufener (Modul,

Mehr

CORBA - Hetereogene Verteilte Systeme

CORBA - Hetereogene Verteilte Systeme In diesem Kapitel: Konzepte: Verteilte Systeme und CORBA Die OMG CORBA Spezifikation Ein einfaches Beispiel Der Client Das verteilte Objekt; der Server Objekt Adapter Literaturhinweise Java 2 ORB VisiBroker

Mehr

C#Objektorientierte. Aleksandra Maj. Programmiersprachen. Programmiersprachen am Beispiel C# Referat im Rahmen des Seminars. 15.

C#Objektorientierte. Aleksandra Maj. Programmiersprachen. Programmiersprachen am Beispiel C# Referat im Rahmen des Seminars. 15. C#Objektorientierte Programmiersprachen am Beispiel C# Referat im Rahmen des Seminars Programmiersprachen 15.Juli 2004 Aleksandra Maj 1 1.Einleitung Kurze Geschichte und Ziele der neuen Programmiersprache

Mehr

Hauptseminar Management von Softwaresystemen. Techniken der System-Integration EAI, Middleware, SOA, CORBA

Hauptseminar Management von Softwaresystemen. Techniken der System-Integration EAI, Middleware, SOA, CORBA Hauptseminar Management von Softwaresystemen Techniken der System-Integration EAI, Middleware, SOA, CORBA Betreuerin: Referent: Ulrike Hammerschall Alexey Krivoborodov Agenda Motivation Arten der Verteilung

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

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

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

WebServices -reloaded-

WebServices -reloaded- WebServices -reloaded- Jan Krüger Bielefeld Bioinformatics Service Institute of Bioinformatics CeBiTec Bielefeld University jkrueger@techfak.uni-bielefeld.de 3 Juli 2007 Übersicht Motivation Was sind WebServices?

Mehr

Softwareschnittstellen

Softwareschnittstellen P4.1. Gliederung Rechnerpraktikum zu Kapitel 4 Softwareschnittstellen Einleitung, Component Object Model (COM) Zugriff auf Microsoft Excel Zugriff auf MATLAB Zugriff auf CATIA Folie 1 P4.2. Einleitung

Mehr

Design Patterns und CORBA

Design Patterns und CORBA Design Patterns und CORBA Heiko Abraham abraham@informatik.uni-freiburg.de 21. Januar 2001 Seminarvortrag Softwarearchitekturen Universität Freiburg 1 Seminar Softwarearchitekturen Inhalt 1. Einleitung

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

Javadoc. Programmiermethodik. Eva Zangerle Universität Innsbruck

Javadoc. Programmiermethodik. Eva Zangerle Universität Innsbruck Javadoc Programmiermethodik Eva Zangerle Universität Innsbruck Überblick Einführung Java Ein erster Überblick Objektorientierung Vererbung und Polymorphismus Ausnahmebehandlung Pakete und Javadoc Spezielle

Mehr

Client/Server-Programmierung. CORBA: Schritt-für-Schritt Anleitung (Mini HOWTO)

Client/Server-Programmierung. CORBA: Schritt-für-Schritt Anleitung (Mini HOWTO) Client/Server-Programmierung WS 2007/08 CORBA: Schritt-für-Schritt Anleitung (Mini HOWTO) Version 1.2, 28.11.07 Schritt 1: Erstellung der IDL Zuerst muß eine IDL (Interface Definition Language)-Datei erstellt

Mehr

Einsatz von Applikationsservern. Untersucht am Beispiel des Sybase Enterprise Application Server

Einsatz von Applikationsservern. Untersucht am Beispiel des Sybase Enterprise Application Server Einsatz von Applikationsservern Untersucht am Beispiel des Sybase Enterprise Application Server Architektur von Datenbanksystemen Client / Server Modell (2 Schichten Modell) Benutzerschnittstelle Präsentationslogik

Mehr

Der Einsatz von CORBA in verteilten EDA-Tools

Der Einsatz von CORBA in verteilten EDA-Tools Der Einsatz von CORBA in verteilten EDA-Tools Frank Grützmacher Technische Universität Ilmenau Fakultät für Elektrotechnik und Informationstechnik Fachgebiet Mikroelektronische Schaltungen und Systeme

Mehr

1 Polymorphie (Vielgestaltigkeit)

1 Polymorphie (Vielgestaltigkeit) 1 Polymorphie (Vielgestaltigkeit) Problem: Unsere Datenstrukturen List, Stack und Queue können einzig und allein int-werte aufnehmen. Wollen wir String-Objekte, andere Arten von Zahlen oder andere Objekttypen

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

Auszug aus JAX-WS Folien

Auszug aus JAX-WS Folien Auszug aus JAXWS Folien Dieses Dokument ist ein Auszug aus unserem Skript zur Java Web Services Schulung. Es dient lediglich als Beispiel für unsere Kursunterlagen. Thomas Bayer Hauptstraße 33 75050 Gemmingen

Mehr

Java für Computerlinguisten

Java für Computerlinguisten Java für Computerlinguisten 2. Objektorientierte Programmierung Christian Scheible Institut für Maschinelle Sprachverarbeitung 28. Juli 2009 Christian Scheible Java für Computerlinguisten 28. Juli 2009

Mehr

3. Die CORBA Dienste. Seite 2 von 11

3. Die CORBA Dienste. Seite 2 von 11 Vortrag: CORBA CORBA Common Object Request Broker Architecture 1. Einleitung Moderne Programmiersprachen haben den objektorientierten Ansatz in die strukturierte Berechnung in einem einzigen Betriebssystemprozess

Mehr

Java 2, Enterprise Edition Einführung und Überblick

Java 2, Enterprise Edition Einführung und Überblick Universität aiserslautern AG Datenbanken und Informationssysteme Seminar Datenbank-Aspekte des E-Commerce Java 2, Enterprise Edition Einführung und Überblick m_husema@informatik.uni-kl.de Vortragsinhalte

Mehr

Übungsgruppe: Ueb18 Datum: 25.05.2003 Erarbeitet von: Marcel Meder, Fan Zhang, Rolf Sabsch

Übungsgruppe: Ueb18 Datum: 25.05.2003 Erarbeitet von: Marcel Meder, Fan Zhang, Rolf Sabsch 1. Allgemeines: Bei WebAssign handelt es sich um ein Übungssystem, das auf einer Web-Architektur basiert. Es unterstützt sowohl Studierende als auch Lehrende. Insbesondere werden Aufgabenerstellung, Entgegennahme

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

3 Objektorientierte Konzepte in Java

3 Objektorientierte Konzepte in Java 3 Objektorientierte Konzepte in Java Bisherige Beobachtungen zu Objekten: werden in Klassen zusammengefasst besitzen Eigenschaften und Verhalten verbergen private Informationen werden geboren, leben und

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

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

Vorbereitungen Download. AVO-Übung 6. Beispiel. Slice. Varianten u.a. für Linux, Windows, OS X ICE-Dokumentation ICE-Binaries (inkl.

Vorbereitungen Download. AVO-Übung 6. Beispiel. Slice. Varianten u.a. für Linux, Windows, OS X ICE-Dokumentation ICE-Binaries (inkl. Vorbereitungen Download AVO-Übung ICE Andreas I. Schmied (andreas.schmied@uni-ulm.de) AspectIX-Team Abteilung Verteilte Systeme Universität Ulm WS005 Varianten u.a. für Linux, Windows, OS X ICE-Dokumentation

Mehr

Design von Schnittstellen mit CORBA-IDL. Andres Koch

Design von Schnittstellen mit CORBA-IDL. Andres Koch Design von Schnittstellen mit CORBA-IDL Andres Koch El. Ing. HTL, M. Math Object Engineering GmbH Birmensdorferstr. 32 8142 Uitikon-Waldegg EMail: akoch@objeng.ch Copyright 1997-2000 by Object Engineering

Mehr

Komponentenarchitekturen

Komponentenarchitekturen Hochschule Luzern Technik & Architektur Prof. Dr. Christina Class Für HS2008 überarbeitet durch Peter Sollberger. Modul Softwarekomponenten Studienelement Komponentenarchitekturen Semester HS 2008 Komponentenarchitekturen

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

3-schichtige Informationssystem-Architektur

3-schichtige Informationssystem-Architektur 3-schichtige Informationssystem-Architektur plattformunabhängig beliebige Endgeräte Client als Applikation & Applet XML über SOAP Standard plattformunabhängig objektorientierte Architektur multiuserfähig

Mehr

Einführung in die C-Programmierung

Einführung in die C-Programmierung Einführung in die C-Programmierung Warum C? Sehr stark verbreitet (Praxisnähe) Höhere Programmiersprache Objektorientierte Erweiterung: C++ Aber auch hardwarenahe Programmierung möglich (z.b. Mikrokontroller).

Mehr

39 Object Request Brokers. 40 Components of an ORB. 40.1 Stubs and Skeletons. 40.1.1 Stub

39 Object Request Brokers. 40 Components of an ORB. 40.1 Stubs and Skeletons. 40.1.1 Stub 39 Object Request Brokers 40.1 Stubs and s invoke methods at remote objects (objects that run in another JVM) Stub: Proxy for remote object example ORBs: RMI, JavaIDL : Invokes methods at remote object

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

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

JDO Java Data Objects

JDO Java Data Objects JDO Java Data Objects Ralf Degner, Chief Consultant Ralf.Degner@poet.de Agenda POET Motivation Geschichte Einführung Architekturen FastObjects POET Gegründet 1993 Zwei Produktlinien esupplier Solutions:

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

Theorie und Praxis einer JSON-RPC-basierten Web-API

Theorie und Praxis einer JSON-RPC-basierten Web-API Theorie und Praxis einer JSON-RPC-basierten Web-API Christian Krause Christian.Krause@raritan.com Raritan Deutschland GmbH Chemnitzer LinuxTage 2015 Gliederung 1 2 Remote Procedure Call Interface Definition

Mehr

1 Einführung in CORBA

1 Einführung in CORBA 1 Einführung in CORBA 1 Einführung in CORBA 1 1.1 Grundlagen.. 2 1.1.1 Die CORBA-ORB-Architektur 2 1.1.2 Die Services von CORBA.. 5 1.1.3 Die Facilities von CORBA. 6 1.1.4 Die Geschäftsobjekte von CORBA

Mehr

Java Persistence API 2.x. crud + relationships + jp-ql

Java Persistence API 2.x. crud + relationships + jp-ql Java Persistence API 2.x crud + relationships + jp-ql Grundprinzip 10.02.10 2 Problematik Man muss bei der Persistierung immer das Klassenmodell und dessen Umsetzung im Datenmodell (in der DB) berücksichtigen.

Mehr

Klausurvorbereitung VS1 (Prof. Brecht) (B0rg Edition)

Klausurvorbereitung VS1 (Prof. Brecht) (B0rg Edition) Ein Prozess kann unmittelbar vom Zustand 1. Running in den Zustand Ready 2. Running in den Zustand Blocked 3. Ready in den Zustand Running Klausurvorbereitung VS1 (Prof. Brecht) (B0rg Edition) Der Adressraum

Mehr

Überblick. Netzprogrammierung 4. CORBA OMG CORBA

Überblick. Netzprogrammierung 4. CORBA OMG CORBA Überblick 1. OMG/CORBA 2. 3. Java Mapping Netzprogrammierung 4. CORBA Prof. Dr.-Ing. Robert Tolksdorf Freie Universität Berlin Institut für Informatik Netzbasierte Informationssysteme mailto: tolk@inf.fu-berlin.de

Mehr