Objektorientierte Software-Entwicklung am Beispiel von ET++ - Gamma, Erich
54,99 €
versandkostenfrei*

inkl. MwSt.
Versandfertig in 6-10 Tagen
0 °P sammeln

    Broschiertes Buch

Dieses Buch konsolidiert Erkenntnisse im Bereich des objektorientierten Entwurfs, die während der Entwicklung von ET++, einer portablen und umfassenden Klassenbibliothek, gemacht wurden. Durch Abstraktion von Design-Strukturen, die in ET++ zur Anwendung kamen, werden sogenannte Design-Muster identifiziert und beschrieben. Design-Muster sind bestimmte abstrahierte Klassenstrukturen, die bei der Gestaltung von neuen objektorientierten Applikationen und Klassenbibliotheken verwendet werden können. Design-Muster ermöglichen so eine Art der Wiederverwendung von Design und stellen dem Entwickler…mehr

Produktbeschreibung
Dieses Buch konsolidiert Erkenntnisse im Bereich des objektorientierten Entwurfs, die während der Entwicklung von ET++, einer portablen und umfassenden Klassenbibliothek, gemacht wurden. Durch Abstraktion von Design-Strukturen, die in ET++ zur Anwendung kamen, werden sogenannte Design-Muster identifiziert und beschrieben. Design-Muster sind bestimmte abstrahierte Klassenstrukturen, die bei der Gestaltung von neuen objektorientierten Applikationen und Klassenbibliotheken verwendet werden können. Design-Muster ermöglichen so eine Art der Wiederverwendung von Design und stellen dem Entwickler zusätzlich ein Vokabular für die Beschreibung eines Entwurfs zur Verfügung. Design-Muster sind deshalb eine wichtige Ergänzung zu bekannten Methoden für den objektorientierten Entwurf.
  • Produktdetails
  • Verlag: Springer, Berlin
  • 1992.
  • Seitenzahl: 208
  • Erscheinungstermin: 23. November 1992
  • Deutsch
  • Abmessung: 235mm x 155mm x 15mm
  • Gewicht: 324g
  • ISBN-13: 9783540560067
  • ISBN-10: 3540560068
  • Artikelnr.: 24979080
Autorenporträt
Dr. Erich Gamma ist der Leiter des IBM OTI Lab in Zürich. Er ist ein Eclipse Committer und verantwortlich für die Java-Entwicklungsumgebung Eclipse . Außerdem ist er Mitglied des Eclipse Project Management Committee (PMC). Neben seiner Tätigkeit im Eclipse-Projekt kennt man Erich Gamma als Entwickler von JUnit. Erich Gamma hat an der Universität Zürich promoviert. Zusammen mit Richard Helm, Ralph Johnnson und John Vlissides ist Erich Gamma weltweit als Gang of Four (GoF) bekannt.
Inhaltsangabe
1 Einleitung.- 2 Objektorientierte Programmierung: Begriffe und Konzepte.- 2.1 Klassen und Objekte.- 2.2 Vererbung.- 2.2.1 Abstrakte Klassen.- 2.2.2 Vererbung der Schnittstelle vs. Vererbung Implementation.- 2.3 Dynamische Bindung, Polymorphismus, standardisierte Protokolle.- 2.3.1 Typenprüfung.- 2.4 Weitere Konzepte objektorientierter Programmiersprachen.- 2.5 Wiederverwendung in der objektorientierten Programmierung - Klassenbibliotheken.- 2.5.1 Bausteinklassen.- 2.5.2 Frameworks.- 2.5.3 Application-Frameworks.- 3 Struktur und Inhalt der ET++ Klassenbibliothek.- 3.1 Eigenschaften der ET++ Klassenbibliothek.- 3.1.1 C++.- 3.2 Die Architektur von ET++.- 3.3 Systemklassen.- 3.4 Fundamentale Klassen.- 3.4.1 Metainformation.- 3.4.2 Aktivierung/Passivierung von Objekten.- 3.4.3 Abhängigkeiten zwischen Objekten (Change-Propagation).- 3.5 Datenstruktur-Klassen.- 3.5.1 Die Realisierung generischer Container-Klassen.- 3.5.2 Iteratoren.- 3.5.3 Textklassen.- 3.6 Graphische Klassen.- 3.6.1 Graphische Grundklassen.- 3.6.2 Elementare graphische Bausteine.- 3.6.3 Klassen zum Zusammensetzen elementarer Bausteine.- 3.6.4 Komplexere graphische Bausteine.- 3.6.5 Standard-Views.- 3.6.6 Darstellung und Manipulation von Text.- 3.7 Application-Framework-Klassen.- 3.7.1 Die Objekthierarchie einer ET++-Applikation.- 3.7.2 Ereignisbehandlung und Kontrollfluss von ET++ Applikationen.- 3.7.3 Die "Hello World" Beispiel-Applikation.- 3.7.4 ET++ im Vergleich mit MacApp.- 3.8 Beispiele fur ET++ Applikationen.- 3.9 Beurteilung der ET++ Klassenbibliothek.- 4 ET++PE - Werkzeugunterstiitzung fiir die Applikationsentwicklung mit ET++.- 4.1 Konzepte von ET++PE.- 4.1.1 Browser.- 4.1.2 Exploratives Untersuchen einer Applikation durch Zeigen und Klicken.- 4.1.3 Verflachung der Klassenhierarchie.- 4.1.4 Instrumentierung von Klassen.- 4.2 Die Browser von ET++PE.- 4.2.1 Der Inspector.- 4.2.2 Der Object Structure Browser.- 4.2.3 Der Class Browser.- 4.2.4 Der Class Hierarchy Browser.- 4.3 Integration von ET++PE in einen Debugger.- 4.3.1 Etgdb.- 4.4 Das ET++Cookbook.- 4.4.1 Konzepte.- 4.4.2 Ein Beispiel für die Benutzung des ET++Cookbooks.- 4.4.3 Integration des ET++Cookbooks in ET++PE.- 4.5 Implementationsaspekte.- 4.5.1 Metainformationen.- 4.5.2 Die Benutzerschnittstelle von ET++PE.- 4.5.3 Implementation des Cookbooks.- 4.5.4 Debugger-Anschluss.- 4.6 Beurteilung von ET++PE.- 4.6.1 Mogliche Verbesserungen von ET++PE.- 4.6.2 ET++PE im Vergleich mit anderen Werkzeugen.- 5 Design-Muster - ein Ansatz für die Unterstützung des objektorientierten Entwurfs.- 5.1 Konzepte zur Unterstützung des objektorientierten Entwurfs.- 5.1.1 Ansätze.- 5.1.2 Entwurfsmethoden.- 5.1.3 Stilregeln.- 5.1.4 Frameworks.- 5.2 Konzepte eines neuen Ansatzes für die Unterstiitzung des objektorientierten Entwurfs.- 5.2.1 Design-Muster ("Design Pattern").- 5.2.2 Kategorien von Design-Mustern.- 5.3 Eine graphische Notation für die Darstellung von Design-Mustern.- 5.3.1 Das Klassendiagramm.- 5.3.2 Das Objektdiagramm.- 5.3.3 Das Methoden-Flussdiagramm.- 5.4 Design-Muster für die Organisation von Klassenhierarchien.- 5.4.1 Familien.- 5.4.2 Teams.- 5.4.3 Subsysteme.- 5.4.4 Frameworks.- 5.4.5 Die globale Organisation einer Klassenbibliothek.- 5.5 Design-Muster für die Gestaltung der Interaktion zwischen Klassen (Interaktions-Design).- 5.5.1 Black-Box- und Parameterklassen.- 5.5.2 Kompositionsklassen ("Composer").- 5.5.3 Umwickler ("Wrapper").- 5.5.4 Brücken- ("Bridges") und Implementationsklassen.- 5.5.5 Delegationsklassen ("Forwarder").- 5.5.6 Vermittler ("Mediator").- 5.5.7 Verfahrensklassen ("Behaviours").- 5.5.8 Strategieklassen ("Policies").- 5.5.9 Adapter.- 5.6 Design-Muster für die Gestaltung der Klassenschnittstelle.- 5.6.1 Allgemeine Grundregeln.- 5.6.2 Elementare und zusammengesetzte Methoden.- 5.6.3 Virtuelle Konstruktoren.- 5.6.4 Standardmethoden ("Defaults").- 5.6.5 Sequenz- und Einschubmethoden.- 5.6.6 Iteratoren.- 5.6.7 Double-Dispatching.- 5.7 Muster für die Reorganisation von Klass