Komponentenorientierte Softwaresysteme

[ Vorlesung | Übungen | Andere Informationen ]

Vorlesung (37-238)

Dozent: Prof. J. Gutknecht, Zeit: Montag 13 - 15, Raum: IFW A36

Das Komponentenkonzept in der Softwarekonstruktion ist nicht neu. Modularisierung und die objektorientierte Perspektive (OOP) sind Stationen auf einem langen Marsch in Richtung Konstruktion komplexer Softwaresysteme durch Komposition aus einfacheren bzw. spezialisierten Bausteinen. Eine unmittelbare Begleiterscheinung einer konsequenten Komponentenkultur ist die Entstehung eines "Marktes" fur hochspezialisierte und vielfach wiederverwendbare Komponenten. Dank der Existenz kommerzieller Komponentenframeworks wie Microsoft .NET, JavaBeans und CORBA ist die Vision in greifbare Nahe gerückt bzw. bereits Realität. Die Vorlesung versucht einerseits die verschiedenen Ausprägungen und Facetten des Komponentenbegriffes von Schlagwörtern zu befreien, konzeptuell zu fassen und einzuordnen, und andererseits eine Einführung in die erwähnten, heute verfügbaren Komponentensysteme zu geben.

Stichwortartige Inhaltsangaben

Module, Objekte und Klassen, Import- und Vererbung, zusammengesetzte Objekte. Das MVC Pattern. Persistenz und Migration. Abstrakte Maschinen. Information Hiding und Abstrakte Datentypen. Interface Inheritance und Implements-Beziehung. Kontraktinterpretation. Interface Beschreibungsprachen (IDL). ".NET". Das Broker-Prinzip. JavaBeans. Enterprise JavaBeans. Server Komponenten. HTML und Applets. Das Sandbox Modell. Skriptingsprachen.

Textbuch zur Vorlesung

Clemens Szyperski, Component Software-Beyond Object-Oriented Programming, Addison-Wesely, 1998.

Vorlesungsfolien

Jeweils aktuellste Version der Folien als .pdf Datei. Die Folien die noch nicht in der Vorlesung vorgekommen sind werden vorausslichtlich noch überarbeitet oder umsortiert.

Aspx Intro von ASP.Net Quickstart. (Handouts aspx.page1.pdf  aspx.page2.pdf )

WSDL Beispiel (JavaBankService.wsdl)

Übungen

Übung 1 : Komposition mit Visual Age (pdf )

Übung 2 : Komposition mit Visual Age (Erstellen eines Java Beans) (pdf ) --> Beispiel-Lösung (nur Java-Code)

Übung 3 : Bean info classes / Property editors ( pdf ) --> Beispiel-Lösung (nur Java-Code)

Übung 4 : BeanContext API (pdf )

Übung 5 : Entwicklung und Einsatz von COM Komponenten. ( pdf )  Vorlagen : U5.Vorlage.Server.zip , U5.Vorlage.Client.zip

--> Beispiel-Lösung U5.ML.Server.zip U5.ML.Client.zip

Übung 6 : .Net "Hands-on Training" (pdf ) Vorlagen : U6.Vorlage.Oberon.Mod Colors.cs

--> Beispiel-Lösung U6.ML.zip

Übung 7 : .Net "Webservice" (pdf ) Vorlagen : U7.Vorlagen.zip

--> Beispiel-Lösung U7.ML.zip

Übung 8 : .Net "ASPX Komponenten" (pdf)

--> Beispiel-Lösung U8.ML.Component.zip (Lösung mittels Web Control)

--> Beispiel-Lösung U8.ML.zip (Lösung mit vererbter Webseite)

Assistenten:
Bernhard Egger , Zeit: Montag 15 - 16, Raum: IFW A36 
Thomas Frey
, Zeit: Montag 15 - 16, Raum: IFW A36

Andere Informationen

Visual Age Java : http://www-4.ibm.com/software/ad/vajava

Bean customization : http://java.sun.com/docs/books/tutorial/javabeans/customization

Bluebottle : http://bluebottle.ethz.ch