Behavioral Patterns. Seminar Software-Entwurf WS 04/05. Przemyslaw Dul
|
|
- Nadine Siegel
- vor 7 Jahren
- Abrufe
Transkript
1 Behavioral Patterns Seminar Software-Entwurf WS 04/05 Przemyslaw Dul
2 Gliederung Design Pattern (Wiederholung) Einordnung Übersicht über die Kategorien: Creational,Structural,Behavioral Übersicht über die Behavioral Patterns Zwei Patterns im Detail Command, Chain Of Responsibility Aspekte: Kapselung der Variation Entkopplung von Sender und Empfänger 2
3 Design Patterns (Wiederholung) Lösungssammlung für Software-Design Probleme Geben Design-Erfahrungen an andere weiter Bessere Lehre Vermeiden/Verringern die Suche nach bereits vorhandenen Lösungen Steigerung der Effizienz Unterstützen die Kommunikation zwischen Entwicklern Leichtere Verständigung Dokumentieren Design-Entscheidungen Bessere Wartbarkeit 3
4 Einordnung Creational Structural Behavioral Design Patterns UML OO Analyse & Design OOP Software-Entwurf 4
5 Übersicht Creational Patterns erzeugen Objekte. Entscheiden flexibel welche Objekte für welchen Fall erzeugt werden sollen. Structural Patterns helfen bei der Gruppierung von Objekten in Strukturen, wie z.b. komplexe User Interfaces. Behavioral Patterns stellen die Kommunikation zwischen Objekten her und helfen bei der Steuerung des Ablaufs der Kommunikation. 5
6 Übersicht Creational Structural Behavioral Abstract Factory Adapter Chain of Responsibility Builder Bridge Command Factory Composite Interpreter Prototype Decorator Iterator Singleton Facade Mediator Flyweight Memento Proxy Observer State Strategy Template Visitor 6
7 Chain of Responisibility Entkoppelt den Sender einer Nachricht von seinem Empfänger, Indem die Empfänger verkettet werden Und die Anfrage entlang der Kette geleitet wird Bis ein Empfänger die Anfrage erledigt. Behavioral Chain of Responsibility Command Interpreter Iterator Mediator Memento Observer State Strategy Template Visitor 7
8 Command Kapselt einen Befehl als ein Objekt. Trennt die Ausführung eines Befehls von der Umgebung, die ihn erzeugt. Befehle können als Parameter übergeben werden. Befehle können in eine Queue oder in einen Stack gestellt werden Um z.b. Operationen rückgängig zu machen. Behavioral Chain of Responsibility Command Interpreter Iterator Mediator Memento Observer State Strategy Template Visitor 8
9 Interpreter Definiert eine Repräsentation einer Grammatik zu einer Sprache Sowie einen Interpreter, um die Sätze in dieser Sprache zu interpretieren. Z.B. für reguläre Ausdrücke, kleine Grammatiken. Behavioral Chain of Responsibility Command Interpreter Iterator Mediator Memento Observer State Strategy Template Visitor 9
10 Iterator Ermöglicht den sequentiellen Zugriff auf die Elemente eines zusammengesetzten Objektes. Die zugrundeliegende Repräsentation wird nicht offengelegt. Behavioral Chain of Responsibility Command Interpreter Iterator Mediator Memento Observer State Strategy Template Visitor 10
11 Mediator Fördert die lose Kopplung von miteinander kommunizierenden Objekten, Indem eine Klasse das Zusammenspiel einer Menge von Objekten kapselt. Die Objekte müssen also nicht aufeinander explizit Bezug nehmen. Ermöglicht das Zusammenspiel unabhängig von diesen Objekten zu variieren. Behavioral Chain of Responsibility Command Interpreter Iterator Mediator Memento Observer State Strategy Template Visitor 11
12 Memento Erfasst und externalisiert (für Speicherung) den internen Zustand eines Objekts. Seine Kapselung wird dabei nicht aufgegeben. Objekt kann später in diesen Zustand zurückversetzt werden. Behavioral Chain of Responsibility Command Interpreter Iterator Mediator Memento Observer State Strategy Template Visitor 12
13 Observer Ändert sich der Zustand eines Objektes, so werden alle seine Beobachter darüber informiert. Nützlich bei 1-zu-N Abhängigkeitsbeziehungen. Behavioral Chain of Responsibility Command Interpreter Iterator Mediator Memento Observer State Strategy Template Visitor 13
14 State Ein Objekt ändert sein Verhalten, wenn sein interner Zustand sich ändert. Nützlich wenn das Verhalten von mehreren Methoden vom aktuellen Zustand abhängt, Und flexibel weitere Zustände hinzugefügt werden sollen. Behavioral Chain of Responsibility Command Interpreter Iterator Mediator Memento Observer State Strategy Template Visitor 14
15 Strategy Kapselt einen Algorithmus in eine Klasse. Macht Algorithmen austauschbar. Nützlich bei Familien von Algorithmen. Behavioral Chain of Responsibility Command Interpreter Iterator Mediator Memento Observer State Strategy Template Visitor 15
16 Template In einer abstrakten Klasse wird das Skelett eines Algorithmus definiert. Einzelne Schritte werden an Unterklassen delegiert. Unterklassen können bestimmte Schritte gestalten, Ohne die Struktur des Algorithmus zu verändern. Behavioral Chain of Responsibility Command Interpreter Iterator Mediator Memento Observer State Strategy Template Visitor 16
17 Visitor Kapselt Operationen auf Elementen einer Objektstruktur (z.b. Baum) als Objekt. Es lassen sich einfach neue Operationen definieren, Ohne die Klassen der zu bearbeitenden Elemente zu verändern. Behavioral Chain of Responsibility Command Interpreter Iterator Mediator Memento Observer State Strategy Template Visitor 17
18 Schema von Patterns Pattern Motivation / Kontext Behavioral Chain of Responsibility Command Struktur Anwendbarkeit Konsequenzen / Auswirkungen Beispiel / Implementierung 18
19 Command Pattern - Motivation Kapselung eines Befehls für GUI-Elemente (Menüs, Buttons, Toolbars usw.) als Objekt. GUI-Elemente brauchen nicht zu wissen, was der Befehl tut. Befehls-Objekte können herumgereicht und gespeichert werden. 19
20 Command Pattern - Struktur Client Caller Command {abstract} execute() : void {abstract} Receiver receiver ConcreteCommand action() : void execute() : void receiver.action(); 20
21 Command Pattern - Anwendbarkeit Um Objekte mit einer auszuführenden Aktion zu parametrisieren. Um Aktionen zu unterschiedlichen Zeitpunkten spezifizieren, aufreihen und ausführen zu lassen. Um Undo zu unterstützen, indem das Command-Objekt alle relevanten Informationen für Umkehr speichert. Protokollierung von Änderungen, Speichern und Laden. Transaktionen (Menge von Datenänderungen) modellieren. 21
22 Command Pattern - Konsequenzen Entkopplung des Auslösers eines Befehls vom Umsetzer. Befehlsobjekte können verändert und erweitert werden. Befehlsobjekte können zu eine Befehlsobjekt zusammengeführt werden. (Composite-Pattern) Einfaches Hinzuzufügen von neuen Befehlen, da keine existierenden Klassen geändert werden müssen. 22
23 Command Pattern - Beispielimplementierung public class Client extends JFrame { public Client(){ HideAction hideaction = new HideAction(); JButton button = new JButton(hideAction); add(button); } } public class HideAction extends AbstractAction { public void actionperformed(actionevent e) { setvisible(false); } } client hideaction button new HideAction() new JButton(hideAction) setvisible(false) actionperformed(...) 23
24 Chain of Responsibility - Motivation Implementierung eines kontextsensitiven Hilfesystems für eine GUI. User erhält Hilfe für den ausgewählten Teil. Button liefert in einem Dialog andere Hilfe, als ähnlicher Button im Hauptfenster. Falls keine spezifische Hilfe, eine allgemeine Hilfe angezeigen. 24
25 Chain of Responsibility - Struktur Client Handler - nexthandler: Handler {abstract} +* handlerequest() : void {abstract} ConcreteHandler + handlerequest() : void ConcreteHandlerB + handlerequest() : void 25
26 Chain of Responsibility - Anwendbarkeit Wenn mehr als ein Objekt eine Anfrage bearbeiten können soll und a priori nicht feststeht welches. Wenn eine Anfrage an einen von mehreren Empfängern gerichtet wird, ohne den Empfänger explizit anzugeben. Wenn die Menge der Empfänger und die Wahl des Empfängers dynamisch sein sollen. 26
27 Chain of Responsibility - Konsequenzen Reduktion der Kopplung zwischen Sender und Empfänger nur noch Referenz auf den Nachfolger, statt auf alle mgl. Empfänger. Mehr Flexibilität bei der Zuweisung von Zuständigkeiten durch Änderung der Kette zur Laufzeit. Aber keine Abarbeitungs-Garantie da kein expliziter Empfänger vorhanden, oder wenn die Kette nicht richtig konfiguriert ist. 27
28 Chain of Responsibility - Implementierung HelpHandler - hhandler: HelpHandler +* handlehelp() : void handler.handlehelp() Application Widget Dialog Button + handlehelp() : void + showhelp() : void if(can handle){ showhelp(); } else { super.handlehelp(); } 28
29 Kapselung der Variation Strategy kapselt einen Algorithmus. State kapselt zustandsabhängiges Verhalten. Mediator kapselt das Protokoll zw. Objekten. Iterator kapselt die Art des Zugriffs und die Traversierung von Elementen eines Objektes. 29
30 Entkopplung von Sender und Empfänger Command: Durch definition der Sender-Empfängerbeziehung in einem separaten Objekt, kann Sender mit verschiedenen Empfängern zusammenarbeiten. Chain Of Responsibility: Durch Weiterleitung einer Anfrage entlang der Kette von mgl. Empfängern. Mediator: Durch indirekte Interaktion durch das Mediator Objekt. Observer: Durch definition einer Schnittstelle zur Signalisierung von Änderungen. 30
31 Das Beste zuletzt! Bis auf wenige Ausnahmen ergänzen sich Behavioral Patterns. Chain of Resposibility kann das Command Pattern verwenden, um Anfragen als Objekte zu repräsentieren. Behavioral Patterns arbeiten gut mit anderen Patterns zusammen. Das Composite-Pattern kann das Visitor-Pattern verwenden, um Operationen auf den Komponenten in der Komposition anzuwenden. 31
Objektorientiertes Software-Engineering
Objektorientiertes Software-Engineering Vorlesung VIII Inhalt der Vorlesung Wiederholung Vorlesung VII Factory Method Observer s Übung Vorstellung des (Gruppe Jukebox) Folie 2 Definiert ein Objekt zur
MehrEntwurfsprinzip. Entwurfsprinzip
Die Komposition (hat ein Beziehung) ist der Vererbung (ist ein Beziehung) vorzuziehen. Es können Familien von Algorithmen in eigenen Klassensätzen gekapselt werden. Das Verhalten lässt sich zu Laufzeit
MehrFassade. Objektbasiertes Strukturmuster. C. Restorff & M. Rohlfing
Fassade Objektbasiertes Strukturmuster C. Restorff & M. Rohlfing Übersicht Motivation Anwendbarkeit Struktur Teilnehmer Interaktion Konsequenz Implementierung Beispiel Bekannte Verwendung Verwandte Muster
MehrSoftware-Architektur Design Patterns
Design Patterns Prof. Dr. Oliver Braun Fakultät für Informatik und Mathematik Hochschule München SS 2015 Standardwerk Gang of Four: Erich Gamma, Richard Helm, Ralph Johnson & John Vlissides: Design Patterns:
MehrDaniel Warneke warneke@upb.de 08.05.2006. Ein Vortrag im Rahmen des Proseminars Software Pioneers
Design Patterns Daniel Warneke warneke@upb.de 08.05.2006 Ein Vortrag im Rahmen des Proseminars Software Pioneers Design Patterns 1/23 Übersicht Einleitung / Motivation Design Patterns Beispiele Rolle des
MehrVermittler (Mediator) Sabine Müller - Sven Richter - Jens Wagenbreth 03IN2-P-D
Vermittler (Mediator) Sabine Müller - Sven Richter - Jens Wagenbreth 03IN2-P-D 1 1. EINLEITUNG... 3 2. ZWECK... 3 3. MOTIVATION... 3 4. ANWENDBARKEIT... 6 5. STRUKTUR... 6 6. TEILNEHMER... 7 7. INTERAKTION...
MehrInhaltsverzeichnis. Vorwort Geleitwort von Grady Booch Einleitung... 23
Vorwort.................................................. 17 Geleitwort von Grady Booch................................. 21 Einleitung................................................ 23 1 Einführung...............................................
MehrFactory Method (Virtual Constructor)
Factory Method (Virtual Constructor) Zweck: Definition einer Schnittstelle für Objekterzeugung Anwendungsgebiete: Klasse neuer Objekte bei Objekterzeugung unbekannt Unterklassen sollen Klasse neuer Objekte
MehrSE Besprechung. Übung 4 Architektur, Modulentwurf
SE Besprechung Übung 4 Architektur, Modulentwurf SE, 22.11.11 Mengia Zollinger 2.1 Architekturstile (6 Punkte) 2.1.A Ausgabe eines Monatsabos an Angestellte Lösung: Pipe-and-Filter Beispiel Lösung [Benz,
MehrTutorium Softwaretechnik I
Tutorium Softwaretechnik I Moritz Klammler 11. Juli 2017 Fakultät für Informatik, IPD Tichy Titelfoto: Copyright (C) 2010 Multimotyl CC BY-SA 3.0 1 11. Juli 2017 Moritz Klammler - Tutorium Softwaretechnik
MehrObjektorientierte 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
MehrMusterlösung zur Vorlesung Modellbasierte Softwareentwicklung Wintersemester 2014/2015 Übungsblatt 9
Prof. Dr. Wilhelm Schäfer Paderborn, 15. Dezember 2014 Christian Brenner Tristan Wittgen Musterlösung zur Vorlesung Modellbasierte Softwareentwicklung Wintersemester 2014/2015 Übungsblatt 9 Aufgabe 1 Codegenerierung
MehrÜberblick FBC SNW Zusammenfassung. Entwurfsmuster. Eine Einführung. Botond Draskoczy. Marcus Vitruvius Pollio
Entwurfsmuster Eine Einführung Botond Draskoczy Marcus Vitruvius Pollio Überblick Historie, Literatur Das Flugapparat-Bildschirmschoner-Projekt (FBP) Das internetbasierte Solar-Netzwerk (SNW) Zusammenfassung
MehrEinführung in die Programmierung
Technische Universität München WS 2003/2004 Institut für Informatik Prof. Dr. Christoph Zenger Testklausur Einführung in die Programmierung Probeklausur Java (Lösungsvorschlag) 1 Die Klasse ArrayList In
Mehr4. AuD Tafelübung T-C3
4. AuD Tafelübung T-C3 Simon Ruderich 17. November 2010 Arrays Unregelmäßige Arrays i n t [ ] [ ] x = new i n t [ 3 ] [ 4 ] ; x [ 2 ] = new i n t [ 2 ] ; for ( i n t i = 0; i < x. l e n g t h ; i ++) {
MehrSoftware-Architektur. Design Patterns. Prof. Dr. Oliver Braun. Fakultät für Informatik und Mathematik Hochschule München
Software-Architektur Design Patterns Fakultät für Informatik und Mathematik Hochschule München Letzte Änderung: 11.07.2017 15:12 Inhaltsverzeichnis Standardwerk.................................... 2 Design
MehrSoftware Engineering. Zur Architektur der Applikation Data Repository. Franz-Josef Elmer, Universität Basel, HS 2015
Software Engineering Zur Architektur der Applikation Data Repository Franz-Josef Elmer, Universität Basel, HS 2015 Software Engineering: Mit acht bewährten Praktiken zu gutem Code 2 Schichtarchitektur
MehrÜbungen zu Einführung in die Informatik: Programmierung und Software-Entwicklung: Lösungsvorschlag
Ludwig-Maximilians-Universität München WS 2015/16 Institut für Informatik Übungsblatt 9 Prof. Dr. R. Hennicker, A. Klarl Übungen zu Einführung in die Informatik: Programmierung und Software-Entwicklung:
MehrDesign Patterns 2. Model-View-Controller in der Praxis
Design Patterns 2 Model-View-Controller in der Praxis Design Patterns Oft Schablonen für eine Klassenstruktur... aber nicht immer! Dahinterliegende Konzepte wichtiger als wörtliche Umsetzung Pattern werden
Mehr5. Abstrakte Klassen. Beispiel (3) Abstrakte Klasse. Beispiel (2) Angenommen, wir wollen die folgende Klassenhierarchie implementieren:
5. Abstrakte Klassen Beispiel 5. Abstrakte Klassen 5. Abstrakte Klassen Beispiel Beispiel (3) Angenommen, wir wollen die folgende Klassenhierarchie implementieren: Probleme des Implementierungsvorschlags:
MehrInventur. Bemerkung. / Inventur
Inventur Die beliebige Aufteilung des Artikelstamms nach Artikeln, Lieferanten, Warengruppen, Lagerorten, etc. ermöglicht es Ihnen, Ihre Inventur in mehreren Abschnitten durchzuführen. Bemerkung Zwischen
MehrTYPO3 Tipps und Tricks
TYPO3 Tipps und Tricks Seiten als Shortcut. Hiermit ist gemeint, dass eine Oberseite direkt auf eine tiefere Unterseite verlinkt. Dies kann bei Themen ohne gesonderte Übersichtsseite hilfreich sein. Zum
MehrAGROPLUS Buchhaltung. Daten-Server und Sicherheitskopie. Version vom 21.10.2013b
AGROPLUS Buchhaltung Daten-Server und Sicherheitskopie Version vom 21.10.2013b 3a) Der Daten-Server Modus und der Tresor Der Daten-Server ist eine Betriebsart welche dem Nutzer eine grosse Flexibilität
MehrVerhindert, dass eine Methode überschrieben wird. public final int holekontostand() {...} public final class Girokonto extends Konto {...
PIWIN I Kap. 8 Objektorientierte Programmierung - Vererbung 31 Schlüsselwort: final Verhindert, dass eine Methode überschrieben wird public final int holekontostand() {... Erben von einer Klasse verbieten:
MehrJava: 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
MehrObjektorientierte Programmierung OOP
Objektorientierte Programmierung OOP Objektorientierte Programmierung OOP Ronja Düffel WS2012/13 08. Oktober 2013 Objektorientierte Programmierung OOP Objektorientierte Programmierung Objektorientierte
MehrIst Fernsehen schädlich für die eigene Meinung oder fördert es unabhängig zu denken?
UErörterung zu dem Thema Ist Fernsehen schädlich für die eigene Meinung oder fördert es unabhängig zu denken? 2000 by christoph hoffmann Seite I Gliederung 1. In zu großen Mengen ist alles schädlich. 2.
MehrObjektorientierte Programmierung. Kapitel 12: Interfaces
12. Interfaces 1/14 Objektorientierte Programmierung Kapitel 12: Interfaces Stefan Brass Martin-Luther-Universität Halle-Wittenberg Wintersemester 2012/13 http://www.informatik.uni-halle.de/ brass/oop12/
MehrDokumentation. Black- und Whitelists. Absenderadressen auf eine Blacklist oder eine Whitelist setzen. Zugriff per Webbrowser
Dokumentation Black- und Whitelists Absenderadressen auf eine Blacklist oder eine Whitelist setzen. Zugriff per Webbrowser Inhalt INHALT 1 Kategorie Black- und Whitelists... 2 1.1 Was sind Black- und Whitelists?...
MehrGEZIELT MEHR SICHERHEIT MIT 4I ACCESS SERVER & 4I CONNECT CLIENT
Seite 1/7 GEZIELT MEHR SICHERHEIT MIT 4I ACCESS SERVER & 4I CONNECT CLIENT ZENTRAL LOKALE MANAGEMENT-PLATTFORM FÜR EINE W ELTWEIT SICHERE INDUSTRIELLE KOMMUNIKATION. Seite 2/7 Auf den folgenden Seiten
MehrÜbungen zu Einführung in die Informatik: Programmierung und Software-Entwicklung: Lösungsvorschlag
Ludwig-Maximilians-Universität München WS 2015/16 Institut für Informatik Übungsblatt 13 Prof. Dr. R. Hennicker, A. Klarl Übungen zu Einführung in die Informatik: Programmierung und Software-Entwicklung:
MehrArbeiten mit UMLed und Delphi
Arbeiten mit UMLed und Delphi Diese Anleitung soll zeigen, wie man Klassen mit dem UML ( Unified Modeling Language ) Editor UMLed erstellt, in Delphi exportiert und dort so einbindet, dass diese (bis auf
Mehr5. Abstrakte Klassen
5. Abstrakte Klassen Beispiel 5. Abstrakte Klassen Angenommen, wir wollen die folgende Klassenhierarchie implementieren: Vogel Amsel Drossel Fink Peter Becker, Programiersprache Java FH Bonn-Rhein-Sieg,
MehrFreigabemitteilung: Nr. 9 System: DFBnet Lizenzverwaltung Version 2.13.9
Freigabemitteilung: Nr. 9 System: DFBnet Lizenzverwaltung Version 2.13.9 Autor: Eva Rasinski Version: V1.0 Erstellungsdatum: 08.11.2006 1:36 Datum der letzen Änderung: 08.11.2006 13:38:00 Inhaltsverzeichnis
MehrVererbung & Schnittstellen in C#
Vererbung & Schnittstellen in C# Inhaltsübersicht - Vorüberlegung - Vererbung - Schnittstellenklassen - Zusammenfassung 1 Vorüberlegung Wozu benötigt man Vererbung überhaubt? 1.Um Zeit zu sparen! Verwendung
MehrHochschule Ravensburg-Weingarten. Technik Wirtschaft Sozialwesen. Projektarbeit
Hochschule Ravensburg-Weingarten Technik Wirtschaft Sozialwesen Projektarbeit Entwicklung eines Reitmoduls mit Reitstundenverwaltung für eine existierende Homepage eines Reitvereins vorgelegt von: Tobias
MehrAbwesenheitsnotiz im Exchange Server 2010
Abwesenheitsnotiz im Exchange Server 2010 1.) Richten Sie die Abwesenheitsnotiz in Outlook 2010 ein und definieren Sie, an welche Absender diese gesendet werden soll. Klicken Sie dazu auf Datei -> Informationen
MehrDesign Pattern - Strukturmuster. CAS SWE - OOAD Marco Hunziker Klaus Imfeld Frédéric Bächler Marcel Lüthi
Design Pattern - Strukturmuster CAS SWE - OOAD Marco Hunziker Klaus Imfeld Frédéric Bächler Marcel Lüthi Agenda Einleitung Strukturmuster Fassade Model View Controller Vergleich 2 Einleitung Strukturmuster
MehrMenü auf zwei Module verteilt (Joomla 3.4.0)
Menü auf zwei Module verteilt (Joomla 3.4.0) Oft wird bei Joomla das Menü in einem Modul dargestellt, wenn Sie aber z.b. ein horizontales Hauptmenü mit einem vertikalen Untermenü machen möchten, dann finden
MehrU08 Entwurfsmuster (II)
U08 Entwurfsmuster (II) Inhalt der Übung Diskussion und Implementierung von Entwurfsmustern Übungsaufgaben Aufgabe 1 (Queue) Gegeben ist das folgende Analysemodell einer Warteschlange (Queue): Eine Warteschlange
MehrApplet Firewall und Freigabe der Objekte
Hauptseminar Applet Firewall und Freigabe der Objekte Nachweis von Sicherheitseigenschaften für JavaCard Jin Zhou Ein Überblick über diesen Vortrag Applet Firewall Kontext JCRE Entry Point Objekt Shareable
Mehr1 Einleitung. Lernziele. automatische Antworten bei Abwesenheit senden. Einstellungen für automatische Antworten Lerndauer. 4 Minuten.
1 Einleitung Lernziele automatische Antworten bei Abwesenheit senden Einstellungen für automatische Antworten Lerndauer 4 Minuten Seite 1 von 18 2 Antworten bei Abwesenheit senden» Outlook kann während
MehrKlassenentwurf. Wie schreiben wir Klassen, die leicht zu verstehen, wartbar und wiederverwendbar sind? Objektorientierte Programmierung mit Java
Objektorientierte Programmierung mit Java Eine praxisnahe Einführung mit BlueJ Klassenentwurf Wie schreiben wir Klassen, die leicht zu verstehen, wartbar und wiederverwendbar sind? 1.0 Zentrale Konzepte
MehrDokumentenverwaltung im Internet
Dokumentenverwaltung im Internet WS 09/10 mit: Thema: Workflow und Rollenverteilung im Backend Gruppe: DVI 10 Patrick Plaum und Kay Hofmann Inhalt 1. Benutzer und Benutzergruppen erstellen...2 1.1. Benutzergruppen...2
MehrMSXFORUM - Exchange Server 2003 > SMTP Konfiguration von Exchange 2003
Page 1 of 8 SMTP Konfiguration von Exchange 2003 Kategorie : Exchange Server 2003 Veröffentlicht von webmaster am 25.02.2005 SMTP steht für Simple Mail Transport Protocol, welches ein Protokoll ist, womit
MehrEin Blick voraus. des Autors von C++: Bjarne Stroustrup. 04.06.2005 Conrad Kobsch
Ein Blick voraus des Autors von C++: Bjarne Stroustrup 04.06.2005 Conrad Kobsch Inhalt Einleitung Rückblick Nur eine Übergangslösung? Was würde C++ effektiver machen? Quelle 2 Einleitung Wo steht C++,
MehrWürfelt man dabei je genau 10 - mal eine 1, 2, 3, 4, 5 und 6, so beträgt die Anzahl. der verschiedenen Reihenfolgen, in denen man dies tun kann, 60!.
040304 Übung 9a Analysis, Abschnitt 4, Folie 8 Die Wahrscheinlichkeit, dass bei n - maliger Durchführung eines Zufallexperiments ein Ereignis A ( mit Wahrscheinlichkeit p p ( A ) ) für eine beliebige Anzahl
MehrObjektorientierte 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)
MehrSEND-IT Bedienungsanleitung
SEND-IT Bedienungsanleitung 1 Allgemeine Konfiguration 1.1 Erfassen / Editieren 2 HTML Editor (EDIT-IT) 2.1 Editor starten 3 Newsletter 3.1 Verteiler erfassen 3.2 Verteiler editieren 3.3 Adressbuch 3.3.1
Mehrejgp Webseite Kurzeinführung
ejgp Webseite Kurzeinführung Inhaltsverzeichnis 1.Einloggen...2 2.Beitrag bearbeiten...2 3.Beitrag hinzufügen...3 4.Bild hoch laden und einfügen...3 5.Link in Text einfügen...4 6.Bilder für die Galerie
MehrXcode/Cocoa/Objective-C Crashkurs Programmieren unter Mac OS X
Xcode/Cocoa/Objective-C Crashkurs Programmieren unter Mac OS X SwissMacMeeting #1 26. Juni 2004 Messeturm Basel http://mac.naepflin.com Was ist das Ziel dieses Kurses? Starthilfe Einblick in die Möglichkeiten,
MehrDieses Tutorial gibt eine Übersicht der Form Klassen von Struts, welche Besonderheiten und Unterschiede diese aufweisen.
Übersicht Struts Forms Dieses Tutorial gibt eine Übersicht der Form Klassen von Struts, welche Besonderheiten und Unterschiede diese aufweisen. Allgemeines Autor: Sascha Wolski http://www.laliluna.de/tutorials.html
MehrEnigmail Konfiguration
Enigmail Konfiguration 11.06.2006 Steffen.Teubner@Arcor.de Enigmail ist in der Grundkonfiguration so eingestellt, dass alles funktioniert ohne weitere Einstellungen vornehmen zu müssen. Für alle, die es
MehrAuktionen erstellen und verwalten mit dem GV Büro System und der Justiz Auktion
Auktionen erstellen und verwalten mit dem GV Büro System und der Justiz Auktion Workshop Software GmbH Siemensstr. 21 47533 Kleve 02821 / 731 20 02821 / 731 299 www.workshop-software.de Verfasser: SK info@workshop-software.de
MehrKonzepte der Informatik
Konzepte der Informatik Vorkurs Informatik zum WS 2011/2012 26.09. - 30.09.2011 17.10. - 21.10.2011 Dr. Werner Struckmann / Christoph Peltz Stark angelehnt an Kapitel 1 aus "Abenteuer Informatik" von Jens
MehrEffiziente Prozesse. Die Formel 1 und die Druckindustrie
Die Formel 1 und die Druckindustrie Was hat die Formel 1 mit der Druckindustrie zu tun? Nun: dass ein Formel-1-Ferrari eine hohe Anziehungskraft hat, ist nicht zu bestreiten. Und dass dies auch für die
MehrNutzung des Retain-Archivs
Nutzung des Retain-Archivs Das Archiv dient zur Langzeitspeicherung von Mail-Daten. Diese werden unveränderbar bis zu 10 Jahren aufbewahrt und dienen zur Entlastung des Online-Postfaches. Seite 1 Bitte
MehrMan liest sich: POP3/IMAP
Man liest sich: POP3/IMAP Gliederung 1. Einführung 1.1 Allgemeiner Nachrichtenfluss beim Versenden von E-Mails 1.2 Client und Server 1.2.1 Client 1.2.2 Server 2. POP3 2.1 Definition 2.2 Geschichte und
MehrJava 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
MehrKap. 35 Swing: Grundlagen Kap. 36.1 Swing: Hauptfenster
Kap. 35 Swing: Grundlagen Kap. 36.1 Swing: Hauptfenster by Ali Bastan Gliederung Grundlagen von Swing 1. Kurze Einleitung 2. Warum Swing, wenn es das AWT gibt? 3. Was ist Swing? 4. Merkmale von Swing 5.
MehrClient-Server-Beziehungen
Client-Server-Beziehungen Server bietet Dienste an, Client nutzt Dienste Objekt ist gleichzeitig Client und Server Vertrag zwischen Client und Server: Client erfüllt Vorbedingungen eines Dienstes Server
MehrOO Softwareentwicklung
OO Softwareentwicklung Objektorientierung Prof. Dr. Bernhard Schiefer 1 OO als Ansatz zur Verbesserung der Software-Qualität Modellierung der Welt als selbständig agierende Objekte. Gemeinsame Beschreibung
MehrErweiterungen Webportal
Erweiterungen Webportal Adress-Suche Inaktive Merkmale und gelöschte Adresse Die Suche im Webportal wurde so erweitert, dass inaktive Adresse (gelöscht) und inaktive Merkmale bei der Suche standardmässig
MehrHuman-Computer-Interaction und Psychologie Aufgaben- und Kontextanalyse
Human-Computer-Interaction und Psychologie Aufgaben- und Kontextanalyse Überblick Kontextanalyse Aufgabenanalyse Basisinformationen Weiterführende Informationen und Beispiele zur Aufgabenanalyse Analyse
MehrMobilgeräteverwaltung
Mobilgeräteverwaltung Das Mobility Management-Tool ist ein Add-on zur LANDesk Management Suite, mit dem Sie mobile Geräte erkennen können, die auf Microsoft Outlook-Postfächer auf Ihrem System zugreifen.
MehrUniversität Bremen. Entwurfsmuster. Thomas Röfer. Wettbewerb Motivation Erzeugende Muster Strukturelle Muster Verhaltensmuster
Entwurfsmuster Thomas Röfer Wettbewerb Motivation Erzeugende Muster Strukturelle Muster Verhaltensmuster Mein Rückblick: RoboCup 2 Euer Rückblick: Textsuche Naive Suche abrakadabra Boyer-Moore abrakadabra
Mehr1 Informationelle Systeme begriffliche Abgrenzung
1 Informationelle Systeme begriffliche Abgrenzung Im Titel dieses Buches wurde das Wort Softwaresystem an den Anfang gestellt. Dies ist kein Zufall, denn es soll einen Hinweis darauf geben, dass dieser
MehrHP Product Content Syndication Steigern Sie Ihre Add-to-Cart Rate in 3 einfachen Schritten
HP Product Content Syndication Steigern Sie Ihre Add-to-Cart Rate in 3 einfachen Schritten Möchten Sie die Add-to-Cart Rate, um bis zu 22 % steigern? Möchten Sie Ihren Kunden dabei jederzeit aktuelle Inhalte
MehrI Serverkalender in Thunderbird einrichten
I Serverkalender in Thunderbird einrichten Damit Sie den Kalender auf dem SC-IT-Server nutzen können, schreiben Sie bitte zuerst eine Mail mit Ihrer Absicht an das SC-IT (hilfe@servicecenter-khs.de). Dann
MehrAnleitung Postfachsystem Inhalt
Anleitung Postfachsystem Inhalt 1 Allgemeines... 2 2 Einloggen... 2 3 Prüfen auf neue Nachrichten... 2 4 Lesen von neuen Nachrichten... 3 5 Antworten auf Nachrichten... 4 6 Löschen von Nachrichten... 4
MehrMCRServlet Table of contents
Table of contents 1 Das Zusammenspiel der Servlets mit dem MCRServlet... 2 1 Das Zusammenspiel der Servlets mit dem MCRServlet Als übergeordnetes Servlet mit einigen grundlegenden Funktionalitäten dient
MehrMehrere Diagramme zu einer Darstellung kombinieren
Mehrere Diagramme zu einer Darstellung kombinieren Linien, Balken, Säulen: Manchmal passt ein Diagrammtyp nicht ganz genau. Wenn du beispielsweise eine Entwicklung mit der parallel verlaufenden Anzahl
MehrArrays von Objekten. Annabelle Klarl. Einführung in die Informatik Programmierung und Softwareentwicklung
Annabelle Klarl Zentralübung zur Vorlesung Einführung in die Informatik: http://www.pst.ifi.lmu.de/lehre/wise-13-14/infoeinf WS13/14 Action required now 1. Smartphone: installiere die App "socrative student"
MehrIntegration verteilter Datenquellen in GIS-Datenbanken
Integration verteilter Datenquellen in GIS-Datenbanken Seminar Verteilung und Integration von Verkehrsdaten Am IPD Lehrstuhl für Systeme der Informationsverwaltung Sommersemester 2004 Christian Hennings
MehrBedienungsanleitung: Onlineverifizierung von qualifiziert signierten PDF-Dateien
Sie haben von der VR DISKONTBANK GmbH ein signiertes PDF-Dokument (i.d.r. eine Zentralregulierungsliste mit dem Status einer offiziellen Rechnung) erhalten und möchten nun die Signatur verifizieren, um
MehrLehrer: Einschreibemethoden
Lehrer: Einschreibemethoden Einschreibemethoden Für die Einschreibung in Ihren Kurs gibt es unterschiedliche Methoden. Sie können die Schüler über die Liste eingeschriebene Nutzer Ihrem Kurs zuweisen oder
MehrHandbuch. NAFI Online-Spezial. Kunden- / Datenverwaltung. 1. Auflage. (Stand: 24.09.2014)
Handbuch NAFI Online-Spezial 1. Auflage (Stand: 24.09.2014) Copyright 2016 by NAFI GmbH Unerlaubte Vervielfältigungen sind untersagt! Inhaltsangabe Einleitung... 3 Kundenauswahl... 3 Kunde hinzufügen...
MehrDesign Patterns. OO-GetTogether. Volker Michels
1 Design Patterns OO-GetTogether Volker Michels 2 Muster (engl. Pattern) Züllighoven: Ein Muster ist eine Abstraktion von einer konkreten Form, die wiederholt in bestimmten nicht willkürlichen Kontexten
MehrWireless LAN PCMCIA Adapter Installationsanleitung
Wireless LAN PCMCIA Adapter Installationsanleitung Diese Anleitung hilft Ihnen bei der Installation des Funknetzwerkadapters für Ihre PCMCIA Schnittstelle und erläutert in wenigen Schritten, wie Sie den
MehrSoftware Engineering II (IB) Design Patterns
Software Engineering II (IB) Design Patterns Prof. Dr. Oliver Braun Letzte Änderung: 16.05.2017 20:56 Software Engineering II (IB), Design Patterns 1/43 Standardwerk Gang of Four: Erich Gamma, Richard
MehrWorkflows verwalten. Tipps & Tricks
Tipps & Tricks INHALT SEITE 1. Grundlegende Informationen 3 2. Workflows / Genehmigungsprofile verwalten 2.1 Erstes Genehmigungsprofil einrichten 5 2.2 Zweites Genehmigungsprofil einrichten 11 2.3 Workflow
MehrEinführung in die objektorientierte Programmierung mit Java. Klausur am 19. Oktober 2005
Einführung in die objektorientierte Programmierung mit Java Klausur am 19. Oktober 2005 Matrikelnummer: Nachname: Vorname: Semesteranzahl: Die Klausur besteht aus drei Frageblöcken zu den Inhalten der
MehrAnleitung über den Umgang mit Schildern
Anleitung über den Umgang mit Schildern -Vorwort -Wo bekommt man Schilder? -Wo und wie speichert man die Schilder? -Wie füge ich die Schilder in meinen Track ein? -Welche Bauteile kann man noch für Schilder
MehrMoni KielNET-Mailbox
Bedienungsanleitung Moni -Mailbox Die geht für Sie ran! Wann Sie wollen, wo immer Sie sind! im Festnetz Herzlichen Glückwunsch zu Moni Ihrer persönlichen -Mailbox! Wir haben Ihre persönliche -Mailbox eingerichtet.
MehrKapitel 3 Bilder farblich verändern - Arbeiten mit Objekten
Nahezu auf jedem Buchcover, CD Hülle oder auf den Werbeseiten in Zeitschriften und Magazinen, sehen Sie fast ausschließlich Bilder, die mit einem EBV Programm einen sogenannten künstlerischen Touch erhalten
MehrDie Captimizer BTZ-Datei 2015
Dipl.-Math. Rainer Schwindt Captimizer s Secrets behind the User Interface 2 Die Captimizer BTZ-Datei 2015 Regeln zur BTZ bei laufendem Navigator und Navigator-Neustart beim Jahreswechsel Geheimnisse hinter
MehrÜ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
Mehr4 Aufzählungen und Listen erstellen
4 4 Aufzählungen und Listen erstellen Beim Strukturieren von Dokumenten und Inhalten stellen Listen und Aufzählungen wichtige Werkzeuge dar. Mit ihnen lässt sich so ziemlich alles sortieren, was auf einer
MehrProf. Dr. Uwe Schmidt. 21. August 2007. Aufgaben zur Klausur Objektorientierte Programmierung im SS 2007 (IA 252)
Prof. Dr. Uwe Schmidt 21. August 2007 Aufgaben zur Klausur Objektorientierte Programmierung im SS 2007 (IA 252) Zeit: 75 Minuten erlaubte Hilfsmittel: keine Bitte tragen Sie Ihre Antworten und fertigen
MehrWinWerk. Prozess 6a Rabatt gemäss Vorjahresverbrauch. KMU Ratgeber AG. Inhaltsverzeichnis. Im Ifang 16 8307 Effretikon
WinWerk Prozess 6a Rabatt gemäss Vorjahresverbrauch 8307 Effretikon Telefon: 052-740 11 11 Telefax: 052-740 11 71 E-Mail info@kmuratgeber.ch Internet: www.winwerk.ch Inhaltsverzeichnis 1 Ablauf der Rabattverarbeitung...
MehrSoftware Engineering II (IB) Design Patterns
Fakultät für Informatik und Mathematik Hochschule München Letzte Änderung: 16.05.2017 20:56 Inhaltsverzeichnis Standardwerk.................................... 2 Erzeugungsmuster.................................
MehrTypumwandlungen bei Referenztypen
Typumwandlungen bei Referenztypen Genau wie es bei einfachen Typen Typumwandlungen gibt, gibt es auch bei Referenztypen Umwandlungen von einem Referenztypen in einen anderen Referenztypen, die wie bei
Mehr8 Design Patterns. Events
8 Design Patterns. Events Jörn Loviscach Versionsstand: 28. März 2015, 19:13 Die nummerierten Felder sind absichtlich leer, zum Ausfüllen beim Ansehen der Videos: http://www.j3l7h.de/videos.html This work
MehrHow-to: Webserver NAT. Securepoint Security System Version 2007nx
Securepoint Security System Inhaltsverzeichnis Webserver NAT... 3 1 Konfiguration einer Webserver NAT... 4 1.1 Einrichten von Netzwerkobjekten... 4 1.2 Erstellen von Firewall-Regeln... 6 Seite 2 Webserver
MehrStudentische Lösung zum Übungsblatt Nr. 7
Studentische Lösung zum Übungsblatt Nr. 7 Aufgabe 1) Dynamische Warteschlange public class UltimateOrderQueue private Order[] inhalt; private int hinten; // zeigt auf erstes freies Element private int
Mehr14 Design Patterns. 14.1 Einführung 14.2 Composite Pattern
14 Design Patterns 14.1 Einführung 14.2 Composite Pattern 14.1 Einführung 14.1.1 Motivation 14.1.2 Was ist ein Design Pattern? 14.1.3 Beschreibung eines Design Patterns 14.1.4 Katalog von Design Patterns
MehrDas Typsystem von Scala. L. Piepmeyer: Funktionale Programmierung - Das Typsystem von Scala
Das Typsystem von Scala 1 Eigenschaften Das Typsystem von Scala ist statisch, implizit und sicher 2 Nichts Primitives Alles ist ein Objekt, es gibt keine primitiven Datentypen scala> 42.hashCode() res0:
MehrSichern auf den zentralen TSM-Servern unter Windows. Sichern auf den zentralen TSM-Servern unter Windows
Sichern auf den zentralen TSM-Servern unter Windows v. 1.0 Juni 2016 1 Inhaltverzeichnis Vorwort... 3 Daten über die grafische Benutzungsschnittstelle (GUI) sichern... 4 Daten über die grafische Benutzerschnittstelle
MehrAutoSPARQL. Let Users Query Your Knowledge Base
AutoSPARQL Let Users Query Your Knowledge Base Christian Olczak Seminar aus maschinellem Lernen WS 11/12 Fachgebiet Knowledge Engineering Dr. Heiko Paulheim / Frederik Janssen 07.02.2012 Fachbereich Informatik
Mehr5.2 Neue Projekte erstellen
5.2 Neue Projekte erstellen Das Bearbeiten von bestehenden Projekten und Objekten ist ja nicht schlecht wie aber können Sie neue Objekte hinzufügen oder gar völlig neue Projekte erstellen? Die Antwort
Mehr