Entwurfsmuster von Kopf bis Fuß:
Gespeichert in:
Hauptverfasser: | , |
---|---|
Format: | Buch |
Sprache: | German |
Veröffentlicht: |
Beijing [u.a.]
O'Reilly
2006
|
Ausgabe: | 1. Aufl. |
Schlagworte: | |
Online-Zugang: | Inhaltsverzeichnis |
Beschreibung: | XXXIV, 638 S. Ill., graph. Darst. |
ISBN: | 3897214210 9783897214217 |
Internformat
MARC
LEADER | 00000nam a2200000 c 4500 | ||
---|---|---|---|
001 | BV021286998 | ||
003 | DE-604 | ||
005 | 20121122 | ||
007 | t| | ||
008 | 060111s2006 xx ad|| |||| 00||| ger d | ||
020 | |a 3897214210 |9 3-89721-421-0 | ||
020 | |a 9783897214217 |9 978-3-89721-421-7 | ||
035 | |a (OCoLC)314816075 | ||
035 | |a (DE-599)BVBBV021286998 | ||
040 | |a DE-604 |b ger |e rakwb | ||
041 | 0 | |a ger | |
049 | |a DE-1051 |a DE-473 |a DE-19 |a DE-861 |a DE-824 |a DE-573 |a DE-858 |a DE-523 |a DE-526 |a DE-634 |a DE-83 |a DE-11 |a DE-2070s | ||
084 | |a ST 230 |0 (DE-625)143617: |2 rvk | ||
084 | |a ST 231 |0 (DE-625)143618: |2 rvk | ||
084 | |a ST 330 |0 (DE-625)143663: |2 rvk | ||
100 | 1 | |a Freeman, Eric |d 1965- |e Verfasser |0 (DE-588)132058332 |4 aut | |
240 | 1 | 0 | |a Head first design patterns |
245 | 1 | 0 | |a Entwurfsmuster von Kopf bis Fuß |c Eric Freeman ; Elisabeth Freeman |
250 | |a 1. Aufl. | ||
264 | 1 | |a Beijing [u.a.] |b O'Reilly |c 2006 | |
300 | |a XXXIV, 638 S. |b Ill., graph. Darst. | ||
336 | |b txt |2 rdacontent | ||
337 | |b n |2 rdamedia | ||
338 | |b nc |2 rdacarrier | ||
650 | 0 | 7 | |a Informationstechnik |0 (DE-588)4026926-7 |2 gnd |9 rswk-swf |
650 | 0 | 7 | |a Entwurfsmuster |0 (DE-588)4546895-3 |2 gnd |9 rswk-swf |
650 | 0 | 7 | |a Java Standard Edition 8 |0 (DE-588)1049861094 |2 gnd |9 rswk-swf |
689 | 0 | 0 | |a Entwurfsmuster |0 (DE-588)4546895-3 |D s |
689 | 0 | 1 | |a Java Standard Edition 8 |0 (DE-588)1049861094 |D s |
689 | 0 | |8 1\p |5 DE-604 | |
689 | 1 | 0 | |a Informationstechnik |0 (DE-588)4026926-7 |D s |
689 | 1 | 1 | |a Entwurfsmuster |0 (DE-588)4546895-3 |D s |
689 | 1 | |8 2\p |5 DE-604 | |
700 | 1 | |a Robson, Elisabeth |e Verfasser |0 (DE-588)132058324 |4 aut | |
856 | 4 | 2 | |m GBV Datenaustausch |q application/pdf |u http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=014607920&sequence=000001&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA |3 Inhaltsverzeichnis |
883 | 1 | |8 1\p |a cgwrk |d 20201028 |q DE-101 |u https://d-nb.info/provenance/plan#cgwrk | |
883 | 1 | |8 2\p |a cgwrk |d 20201028 |q DE-101 |u https://d-nb.info/provenance/plan#cgwrk | |
943 | 1 | |a oai:aleph.bib-bvb.de:BVB01-014607920 |
Datensatz im Suchindex
_version_ | 1815506666405232640 |
---|---|
adam_text |
ENTWURFSMUSTER VON KOPF BIS FUSS WAERE ES NICHT WUNDER- VOLL, WENN ES EIN
BUCH UEBER ENTWURFSMUSTER GAEBE, DAS MEHR SPASS MACHT ALS EIN BESUCH BEIM
ZAHNARZT UND AUFSCHLUSSREICHER IST ALS EIN STEUERFORMULAR? IST WOHL NUR
EIN TRAUM. ERIC FREEMAN ELISABETH FREEMAN MIT KATHY SIERRA BERT BATES
DEUTSCHE UEBERSETZUNG VON LARS SCHULTEN UND ELKE BUCHHOLZ O'REILLY
BEIJING * CAMBRIDGE * KOELN * PARIS * SEBASTOPOL * TAIPEI * TOKYO
INHALTSVERZEICHNIS 1 WILLKOMMEN BEI DEN ENTWURFSMUSTERN WILLKOMMEN BEI
DEN ENTWURFSMUSTERN IRGENDJEMAND HAT IHRE PROBLEME BEREITS GELOEST, IN
DIESEM KAPITEL LERNEN SIE, WARUM (UND WIE) SIE DIE ERFAHRUNGEN UND
LEKTIONEN VERWERTEN KOENNEN, DIE ANDERE ENTWICKLER GELERNT HABEN, DIE IN
DEN GLEICHEN ENTWURFSSCHWIERIGKEITEN STECKTEN UND DEN TRIP UEBERLEBT
HABEN. DAZU WERDEN WIR EINEN BLICK AUF DIE VERWENDUNG UND DIE VORTEILE
VON ENTWURFSMUSTERN WERFEN, UNS EINIGE GRUNDLEGENDE
OO-ENTWURFSPRINZIPIEN ANSEHEN UND EIN BEISPIEL DAFUER DURCHGEHEN, WIE EIN
BESTIMMTES MUSTER FUNKTIONIERT. AM BESTEN ARBEITEN SIE MIT MUSTERN,
INDEM SIE IHR GEHIRN MIT IHNEN AUFLADEN UND DANN IN IHREN ENTWUERFEN UND
IN BESTEHENDEN ANWENDUNGEN DIE PUNKTE ERKENNEN, AN DENEN SIE SIE
ANWENDEN KOENNEN. AN STELLE VON CODE-WIEDERVERWENDUNG BIETEN IHNEN MUSTER
ERFAHRUNGS-WIEDERVERWENDUNG. DENKEN SIE DARAN: WER KONZEPTE WIE
ABSTRAKTION UND VERERBUNG KENNT, IST DESWEGEN NOCH LANGE KEIN TOLLER
OO-ENTWICKLER. EIN ECHTER GURU UEBERLEGT, WIE ER SEINE ENTWUERFE SO
FLEXIBEL GESTALTEN KANN, DASS SIE LEICHT ZU WARTEN UND ZU AENDERN SIND.
DIE SIMENTE-ANWENDUNG EIKE DENKT UEBER VERERBUNG NACH UND WIE WAERE ES MIT
EINEM INTERFACE? DIE EINE KONSTANTE BEI DER SOFTWARE-ENTWICKLUNG DAS,
WAS VERAENDERLICH IST, VON DEM TRENNEN, WAS GLEICH BLEIBT DAS
ENTENVERHALTEN ENTWERFEN DEN ENTEN-CODE TESTEN ' \ VERHALTEN DYNAMISCH
SETZEN NOCH MAL IM GANZEN: GEKAPSELTES VERHALTEN HAT-EIN KANN IST-EIN
UEBERLEGEN SEIN DAS STRATEGY-MUSTER DIE MACHT EINES GEMEINSAMEN
MUSTERVOKABULARS WIE VERWENDE ICH ENTWURFSMUSTER? WERKZEUGE FUER IHREN
DESIGN-WERKZEUGKASTEN LOESUNGEN ZU DEN AUFGABEN *'**.*\T- F RT 2 5 6 8 10
11 18 20 22 23 24 28 29 32 34 VIII DAS 2 IHRE OBJEKTE AUF DEM LAUFENDEN
HALTEN VERPASSEN SIE NICHT, WENN ETWAS INTERESSANTES PASSIERT! WIR HABEN
EIN MUSTER, DAS IHRE OBJEKTE AUF DEM LAUFENDEN HAELT, WENN ETWAS
PASSIERT, DAS SIE INTERESSIEREN KOENNTE. OBJEKTE KOENNEN SOGAR ZUR
LAUFZEIT ENTSCHEIDEN, OB SIE INFORMIERT WERDEN MOECHTEN. DAS
OBSERVER-MUSTER IST EINS DER MUSTER, DIE IM JDK AM HAEUFIGSTEN VERWENDET
WERDEN. UND ES IST UNGLAUBLICH NUETZLICH. IN DIESEM KAPITEL SEHEN WIR UNS
AUSSERDEM EINS-ZU-VIELE- BEZIEHUNGEN UND LOCKERE BINDUNGEN AN. MIT DEM
OBSERVER-MUSTER WERDEN SIE ZUM MITTELPUNKT DER MUSTER-PARTY. ; DIE
WETTERSTATION-ANWENDUNG IM UEBERBLICK 39 GESTATTEN: DAS OBSERVER-MUSTER
.**.-. 44 HERAUSGEBER + ABONNENTEN * OBSERVER-MUSTER 45
FUENF-MINUTEN-DRAMA: EIN SUBJEKT UNTER BEOBACHTUNG 48 DIE DEFINITION DES
OBSERVER-MUSTERS ; 51 DIE MACHT DER LOCKEREN BINDUNG 53 DIE
WETTERSTATION ENTWERFEN . 56 DIE WETTERSTATION IMPLEMENTIEREN 57 JAVAS
EINGEBAUTES OBSERVER-MUSTER VERWENDEN 64 DIE DUNKLE SEITE VON
JAVA.UTIL.OBSERVABLE 71 WERKZEUGE FUER IHREN DESIGN-WERKZEUGKASTEN 74 DIE
LOESUNGEN ZU DEN AUFGABEN 77 DAS OBJEKT, DAS D T IX INHALTSVERZEICHNIS 3
OBJEKTE DEKORIEREN -I-* NENNEN WIR DIESES KAPITEL EINFACH »VERERBST DU
NOCH ODER DESIGNST DU SCHON?. WIR UNTERSUCHEN NOCH EINMAL EINEN
TYPISCHEN FALL UEBERSTRAPAZIERTER VERERBUNG, UND SIE WERDEN LERNEN, WIE
SIE IHRE KLASSEN MIT HILFE EINER FORM DER OBJEKT-ZUSAMMENSETZUNG ERST
ZUR LAUFZEIT »DEKORIEREN. WARUM? WENN IHNEN DIE TECHNIKEN DES
DEKORIERENS EINMAL VERTRAUT SIND, KOENNEN SIE IHREN OBJEKTEN (ODER DEN
OBJEKTEN ANDERER) NEUE AUFGABEN GEBEN, OHNE DEN CODE DER ZU GRUNDE
LIEGENDEN KLASSE AENDERN ZU MUESSEN. " ^ ' FRUEHER DACHTE ICH IMMER, ECHTE
MAENNER BILDEN GRUNDSAETZLICH FUER ALLES UNTERKLASSEN. BIS ICH GELERNT
HABE, WELCHE MACHT MAN IN DEN HAENDEN HAELT, WENN MAN ZUR LAUFZEIT UND
NICHT ZUR KOMPILIERZEIT ERWEITERT. UND SEHEN SIE MICH HEUTE MAL AN!
WILLKOMMEN BEI STERNBACK-KAFTEE DAS OFFEN/GESCHLOSSEN-PRINZIP DUERFEN WIR
VORSTELLEN: DAS DECORATOR-MUSTER! EIN GETRAENK MIT DEKORIERERN AUFBAUEN
DIE DEFINITION DES DECORATOR-MUSTERS GETRAENKE DEKORIEREN DEN
STERNBACK-CODE SCHREIBEN DEKORIERER AUS DER PRAXIS: JAVA I/O EINEN
EIGENEN I/O-DEKORIERER SCHREIBEN WERKZEUGE FUER IHREN
DESIGN-WERKZEUGKASTEN LOESUNGEN ZU DEN UEBUNGEN 80 86 88 89 91 93 95 100
102 105 106 4 BACKEN IN OO-QUALITAET MACHEN SIE SICH BEREIT, EIN PAAR
LOCKER GEBUNDENE 00- ENTWUERFE ZU BACKEN. DAS ERSTELLEN VON OBJEKTEN HAT
MEHR ZU BIETEN ALS DIE SIMPLE VERWENDUNG DES NEW-OPERATORS. SIE WERDEN
LERNEN, DASS INSTANTIIERUNG EINE AKTIVITAET IST, DIE NICHT IMMER IN DER
OEFFENTLICHKEIT VERUEBT WERDEN SOLLTE UND OFT ZU BINDUNGSPROBLEMEN FUEHREN
KANN. UND DAS WOLLEN SIE DOCH NICHT, ODER? LERNEN SIE, WIE SIE DAS
FACTORY-MUSTER VOR LAESTIGEN ABHAENGIGKEITEN RETTEN KANN. DIE ASPEKTE
IDENTIFIZIEREN, DIE VERAENDERLICH SIND 112 DIE OBJEKT-ERSTELLUNG KAPSELN
114 EINE EINFACHE PIZZAFABRIK ERSTELLEN 115 DIE DEFINITION DER EINFACHEN
FABRIK 117 EIN FRAMEWORK FUER DIE PIZZERIA 120 DIE UNTERKLASSEN
ENTSCHEIDEN LASSEN 121 EROEFFNEN WIR ALSO EINE PIZZERIA 123 EINE
FABRIKMETHODE DEKLARIEREN 125 ZEIT, DAS FACTORY METHOD-MUSTER ZU TREFFEN
131 PARALLELE KLASSENHIERARCHIEN 132 DIE DEFINITION DES FACTORY
METHOD-MUSTERS 134 EINE SEHR ABHAENGIGE PIZZERIA 137 EIN BLICK AUF
OBJEKT-ABHAENGIGKEITEN 138 DAS PRINZIP DER UMKEHRUNG DER ABHAENGIGKEITEN
139 INZWISCHEN IN DER PIZZERIA ' 144 ZUTATENFAMILIEN 145 DIE
ZUTATENFABRIKEN AUFBAUEN 146 WAS WIR GEMACHT HABEN 153 DIE DEFINITION
DES ABSTRACT FACTORY-MUSTERS 156 FACTORY METHOD UND ABSTRACT FACTORY IM
VERGLEICH 160 WERKZEUGE FUER IHREN DESIGN-WERKZEUGKASTEN 162 LOESUNGEN ZU
DEN UEBUNGEN 164 XI INHALTSVERZEICHNIS 5 DAS EIN EINZIGARTIGES OBJEKT
UNSER NAECHSTER HALT IST DAS SINGLETON-MUSTER, UNSERE FAHRKARTE ZUR
ERSTELLUNG EINZIGARTIGER OBJEKTE VON KLASSEN, VON DENEN ES NUR EINE
EINZIGE INSTANZ GEBEN KANN. VIELLEICHT FREUT ES SIE ZU ERFAHREN, DASS
DAS SINGLETON-MUSTER IN BEZUG AUF DAS KLASSENDIAGRAMM DAS EINFACHSTE
ALLER MUSTER IST. DAS DIAGRAMM ENTHAELT TATSAECHLICH NUR EINE EINZIGE
KLASSE! ABER MACHEN SIE ES SICH NICHT ZU BEQUEM. TROTZ DER EINFACHHEIT
IN BEZUG AUF DAS KLASSENDIAGRAMM WERDEN WIR AUF EINE REIHE BUCKEL UND
SCHLAGLOECHER IN SEINER IMPLEMENTIERUNG STOSSEN. SIE SCHNALLEN SICH ALSO
BESSER AN. DAS KLEINE SINGLETON 171 DIE KLASSISCHE IMPLEMENTIERUNG DES
SINGLETON-MUSTERS SEZIEREN 173 BEKENNTNISSE EINES SINGLETON , 174 DIE
SCHOKOLADENFABRIK ; 175 DEFINITION DES SINGLCTON-MUSTERS 177 HOUIRTORR,
WIR HABEN EIN PROBLEM . : ' 178 SPIELEN SIE.]VM , I: 179 MIT
MULTITHREADING KLARKOMMEN 180 FRAGEN UND ANTWORTEN ZUM SINGLE TON 184
WERKZEUGE FUER IHREN DESIGN-WERKZEUGKASTEN 186 LOESUNGEN ZU DEN UEBUNGEN
188 XII 6 AUFRUFE EINKAPSELN IN DIESEM KAPITEL HEBEN WIR DIE KAPSELUNG
NOCH EINMAL AUF EIN GANZ NEUES NIVEAU: WIR WERDEN METHODENAUFRUFE
EINKAPSELN. JA, WIRKLICH INDEM WIR DEN METHODENAUFRUF KAPSELN, KOENNEN
WIR TEILE VON BERECHNUNGEN EINFRIEREN, DAMIT DAS OBJEKT, DAS DIE
BERECHNUNG AUFRUFT, SICH NICHT DARUM KUEMMERN MUSS, WIE DIESE DINGE
GEMACHT WERDEN. ES VERWENDET EINFACH UNSERE EINGEFRORENE METHODE, UM SIE
AUSFUEHREN ZU LASSEN. MIT DIESEN EINGEKAPSELTEN METHODENAUFRUFEN KOENNEN
WIR AUSSERDEM EINIGE UNVERSCHAEMT GESCHICKTE DINGE TUN, SIE BEISPIELSWEISE
SPEICHERN, UM SIE ZU PROTOKOLLIEREN, ODER WIEDERVERWENDEN, UM UNSEREM
CODE EINE RUECKGAENGIG-FUNKTIONALITAET ZU SPENDIEREN. DIE FERNSTEUERUNG 193
WERFEN WIR EINEN BLICK AUF DIE KLASSEN DER HERSTELLER 194 INZWISCHEN IM
RESTAURANT 197 SEHEN WIR UNS DAS ZUSAMMENSPIEL ETWAS GRUENDLICHER AN 198
ROLLEN UND VERANTWORTLICHKEITEN IM RESTAURANT OBJEKTHAUSEN 199 VOM
RESTAURANT ZUM COMMAND-MUSTER 201 UNSER ERSTES BEFEHL-OBJEKT 203 DIE
DEFINITION DES COMMAND-MUSTERS -"'.* 206 DEN FERNSTEUERUNGSPLAETZEN
BEFEHLE ZUWEISEN ' 209 DIE FERNBEDIENUNG IMPLEMENTIEREN 210 DIE
FERNSTEUERUNG IN GANG SETZEN ' . 212 ZEIT, DIESE DOKUMENTATION ZU
SCHREIBEN 215 EINEN STATUS VERWENDEN, UM RUECKGAENGIG ZU IMPLEMENTIEREN
220 JEDE FERNSTEUERUNG BRAUCHT EINEN PARTY-MODUS! 224 EINEN MAKRO-BEFEHL
VERWENDEN 225 WEITERE VERWENDUNGEN: WARTESCHLANGEN FUER BEFEHLE 228
WEITERE VERWENDUNGEN: ANFRAGEN PROTOKOLLIEREN 229 WERKZEUGE FUER IHREN
DESIGN-WERKZEUGKASTEN 230 LOESUNGEN ZU DEN AUFGABEN 232 XIII
INHALTSVERZEICHNIS DIE ADAPTER- UND STECKDOSE ADAPTER STECKER
ANPASSUNGSFAEHIGKEIT BEWEISEN IN DIESEM KAPITEL WERDEN WIR UNS AN
UNMOEGLICHEN DINGEN VERSUCHEN - EINEN RECHTECKIGEN PFLOCK IN EIN RUNDES
LOCH ZU STECKEN BEISPIELSWEISE. KLINGT UNMOEGLICH? NICHT, WENN MAN
DESIGN- PATTERNS HAT. ERINNERN SIE SICH AN DAS DECORATOR-MUSTER? WIR
HABEN OBJEKTE UMHUELLT, UM IHNEN NEUE VERANTWORTLICHKEITEN ZU GEBEN.
JETZT WERDEN WIR EINIGE OBJEKTE MIT EINEM ANDEREN ZIEL EINPACKEN: UM
IHREN SCHNITTSTELLEN DEN ANSCHEIN ZU VERLEIHEN, DASS SIE WIE ETWAS
AUSSEHEN, DAS SIE NICHT SIND. WARUM SOLLTEN WIR DAS TUN? WIR HABEN DAMIT
DIE MOEGLICHKEIT, EIN DESIGN, DAS EINE BESTIMMTE SCHNITTSTELLE ERWARTET,
AN EINE KLASSE ANZUPASSEN, DIE EINE ANDERE SCHNITTSTELLE IMPLEMENTIERT.
UND DAS IST NICHT ALLES. WAEHREND WIR DABEI SIND, WERDEN WIR UNS NOCH EIN
WEITERES MUSTER ANSEHEN, DAS OBJEKTE UMHUELLT, UM IHRE SCHNITTSTELLE ZU
VEREINFACHEN. ADAPTER, WO WIR NUR HINSCHAUEN OBJEKTORIENTIERTE ADAPTER
DAS ADAPTER-MUSTER ERKLAERT DIE DEFINITION DES ADAPTER-MUSTERS OBJEKT-
UND KLASSEN-ADAPTER KAMINGESPRAECHE: OBJEKT- UND KLASSEN-ADAPTER ADAPTER
AUS DEM WIRKLICHEN LEBEN EINEN ENUMERATOR AN EINEN ITERATOR ANPASSEN
KAMINGESPRAECHE: DECORATOR- UND ADAPTER-MUSTER GEMUETLICHES HEIMKINO
BELEUCHTUNG, KAMERA, FASSADE DIE HEIMKINO-FASSADE AUIBAUEN DIE
DEFINITION DES FACADE-MUSTERS DAS PRINZIP DER VERSCHWIEGENHEIT WERKZEUGE
FUER IHREN DESIGN-WERKZEUGKASTEN LOESUNGEN ZU DEN AUFGABEN XIV 236 237 241
243 244 247 248 249 252 255 258 261 264 265 270 272 8 S TEMPLATE
ALGORITHMEN EINKAPSELN WIR SIND AUF DEM TOTALEN KAPSELUNGSTRIP. WIR
HABEN DIE OBJEKT-ERSTELLUNG EINGEKAPSELT, METHODENAUFRUFE, KOMPLEXE
SCHNITTSTELLEN, ENTEN, PIZZAS . WAS KOENNTE ALS NAECHSTES KOMMEN? WIR
WERDEN DAZU UEBERGEHEN, TEILE VON ALGORITHMEN ZU KAPSELN, DAMIT
UNTERKLASSEN SICH JEDERZEIT IN EINE BERECHNUNG EINKAPSELN KOENNEN, WENN
SIE DAS MOECHTEN. AUSSERDEM WERDEN WIR EINIGES UEBER EIN ENTWURFSPRINZIP
LERNEN, DAS VON HOLLYWOOD INSPIRIERT IST. TEE Q TALLUJCTA» THTT »HL!
1 SVFWD-,. AI» UEBT KOFF EINTIALTFGES »ETRAENK Q ITWAT WAJJCR KOEHFH Q
AUFGLEHN 0 »TRAENK IN ISJIE ICHWTEN 0 ZUTATEN HINZUFUEGEN * S -*(. AB
*** T ^ ' KAFF EE 0 5J.II» ** "**" EIN PAAR KAFFEE- UND TEE-KLASSEN
(IN JAVA) ZUSAMMENRUEHREN 277 DUERFTE ICH VIELLEICHT IHREN KAFFEE, TEE
ABSTRAHIEREN? 280 DEN ENTWURF WEITERENTWICKELN 281 ZUBEREITUNGSREZEPTO
ABSTRAHIEREN 282 WAS ALSO HABEN WIR GEMACHT? 285 DUERFEN WIR VORSTELLEN:
DAS TEMPLATE METHOD-MUSTER! 286 KOCHEN WIR DOCH MAL ETWAS TEE . 287
WAS HAT UNS DAS TEMPLATE METHOD-MUSTER GEBRACHT? . . 288 DIE DEFINITION
DES TEMPLATE METHOD-MUSTERS : 289 HAKEN WIR UNS BEI EINER
TEMPLATE-METHODE EIN . , 292 DEN HOOK VERWENDEN 293 FUEHREN WIR DEN
TESTLAUF AUS 294 DAS HOLLYWOOD-PRINZIP 296 DAS HOLLYWOOD-PRINZIP UND DAS
TEMPLATE METHOD-MUSTER 297 TEMPLATE-METHODEN IM WIRKLICHEN LEBEN 299 MIT
DEM TEMPLATE METHOD-MUSTER SORTIEREN 300 WIR HABEN EIN PAAR ENTEN, DIE
SORTIERT WERDEN MUESSEN 301 ENTEN MIT ENTEN VERGLEICHEN 302 DER AUFBAU
EINER ENTEN-SORTIERMASCHINE 304 SWINGING MIT FRAMES 306 KAMINGESPRAECHE:
TEMPLATE METHOD UND STRATCGY 308 WERKZEUGE FUER IHREN
DESIGN-WERKZEUGKASTEN 311 LOESUNGEN ZU DEN AUFGABEN 312 XV R
INHALTSVERZEICHNIS DIE ITERATPR- UND ERFOLGREICHE KOLLEKTIONEN ES GIBT
VIELE MOEGLICHKEITEN, OBJEKTE IN EINE SAMMLUNG ZU PACKEN. STECKEN SIE SIE
IN EIN ARRAY-, STACK-, -LIST- ODER HASHTABLE-OBJEKT. SIE HABEN DIE FREIE
AUSWAHL. UND JEDE HAT IHRE VOR- UND NACHTEILE. ABER IRGENDWANN WIRD IHR
CLIENT UEBER DIESE OBJEKTE ITERIEREN WOLLEN. WERDEN SIE IHM IHRE
IMPLEMENTIERUNG ZEIGEN, WENN ER DAS TUT? WIR HOFFEN GANZ ENTSCHIEDEN,
DASS SIE DAS NICHT TUN WERDEN! ES WAERE EINFACH NICHT PROFESSIONELL. SIE
MUESSEN IHRE KARRIERE NICHT RISKIEREN. SIE WERDEN SEHEN, WIE SIE ES
CLIENTS ERMOEGLICHEN, UEBER IHRE OBJEKT ZU ITERIEREN, OHNE DASS ER JE
SIEHT, WIE SIE IHRE OBJEKTE SPEICHERN. SIE WERDEN AUCH LERNEN, WIE SIE
SUPER COLLECTIONS VON OBJEKTEN PFLEGEN, DIE MIT EINEM EINZIGEN SATZ
EINIGE BEEINDRUCKENDE DATENSTRUKTUREN UEBERSPRINGEN KOENNEN. UND WENN
IHNEN DAS IMMER NOCH NICHT AUSREICHT, WERDEN SIE AUSSERDEM EIN ODER ZWEI
DINGE UEBER OBJEKTVERANTWORTLICHKEIT LERNEN. ALLE SPEISEKARTEN RESTAURANT
OBJEKTHAUSEN UND PFANNKUCHENHAUS OBJEKTHAUSEN FUSIONIEREN 316 JUPPS UND
WIMS SPEISEKARTEN-IMPLEMENTIERUNGEN 318 KOENNEN WIR DIE ITERATION
KAPSELN? 323 DARF ICH VORSTELLEN: DAS ITERATOR-MUSTER 325 DER
RESTAURANTSPEISEKARTE EINEN ITERATOR HINZUFUEGEN 326 BLICK AUF DEN
ENTWURF 33 1 MIT JAVA.UTIL.ITERATOR SAUBER MACHEN 333 WAS BRINGT UNS
DAS? 335 DIE DEFINITION DES ITERATOR-MUSTERS ^ 336 EINE EINZIGE
VERANTWORTLICHKEIT 339 ITERATOREN UND COLLECTIONS 348 ITERATOREN UND
COLLECTIONS IN JAVA 5 349 UND GERADE ALS WIR DACHTEN, ALLES WAERE IN
TROCKENEN TUECHERN . 353 DIE DEFINITION DES COMPOSITE-MUSTERS 356 MIT
DEM COMPOSITE-MUSTER SPEISEKARTEN ENTWERFEN 359 DIE
KOMPOSITA-SPEISEKARTE IMPLEMENTIEREN 362 EIN RUECKBLICK AUF ITERATOR 368
DER NULL-ITERATOR 372 DIE MAGIE VON ITERATOREN UND KOMPOSITA ZUSAMMEN
374 WERKZEUGE FUER IHREN DESIGN-WERKZEUGKASTEN 380 LOESUNGEN ZU DEN
AUFGABEN 381 XVI STATE-MUSTER 1 0 DIE ZUSTAENDE IN OBJEKTHAUSEN EINE KAUM
BEKANNTE TATSACHE IST: DAS STRATEGY- UND DAS STATE-MUSTER SIND
ZWILLINGE, DIE BEI DER GEBURT GETRENNT WURDEN. WIE SIE SCHON WISSEN, HAT
DAS STRATEGY-MUSTER SPAETER EIN SUPERERFOLGREICHES GESCHAEFT MIT
AUSTAUSCHBAREN ALGORITHMEN AUFGEBAUT. DAS STATE-PATTERN HINGEGEN HAT
EINEN ANDEREN - VIELLEICHT EDELMUETIGEREN - WEG EINGESCHLAGEN: ES HILFT
OBJEKTEN, IHR VERHALTEN MITTELS VERAENDERUNG IHRES INTERNEN ZUSTANDS ZU
KONTROLLIEREN. OFT HOERT MAN ES ZU SEINER OBJEKT-KLIENTEL SAGEN: »SPRECHT
MIR NACH: ICH BIN GUT GENUG, ICH BIN KLUG GENUG, VERDAMMT NOCH MAL.
WIE IMPLEMENTIEREN WIR EINEN ZUSTAND? 387 EINFUEHRUNGSKURS
»ZUSTANDSAUTOMATEN 388 DER CODE FUER EINEN ERSTEN ZUSTANDSAUTOMATEN 390
DAS MUSSTE JA KOMMEN . EINE AENDERUNGSANFRAGE! 394 ZUSTAENDE WIE BEI
HEMPELS UNTERM SOFA . 396 DEFINITION DES ZUSTANDS-INTERFACE UND DER
ZUSTANDSKIASSEN 399 IMPLEMENTIERUNG UNSERER ZUSTANDSKIASSEN 401 UMBAU
DES KAUGUMMIAUTOMATEN 402 DIE DEFINITION DES STATE-MUSTERS 410 STATE UND
STRATEGY 411 GESUNDHEITSCHECK: STIMMT ALLES 417 DAS HAETTEN WIR BEINAHE
VERGESSEN! 420 WERKZEUGE FUER IHREN DESIGN-WERKZEUGKASTEN 423 LOESUNGEN ZU
DEN UEBUNGEN 424 XVII INHALTSVERZEICHNIS ?ROX/-MUSTER 1 1 DEN ZUGRIFF AUF
OBJEKTE KONTROLLIEREN HABEN SIE SCHON MAL »GOOD COP - BAD COP GESPIELT?
SIE SIND DER GUTE POLIZIST UND HELFEN DEN MENSCHEN NETT UND FREUNDLICH.
ABER SIE MOECHTEN EINFACH NICHT JEDEM ZU DIENSTEN SEIN, UND DESHALB HABEN
SIE DEN BOESEN POLIZISTEN, DER DEN ZUGANG ZU IHNEN KONTROLLIERT. GENAU
DAS TUN PROXYS: SIE KONTROLLIEREN UND STEUERN DEN ZUGANG ZU ETWAS
ANDEREM. WIE SIE SEHEN WERDEN, KOENNEN PROXYS SICH AUF GANZ
UNTERSCHIEDLICHE ART UND WEISE VOR IHRE ZUGEHOERIGEN OBJEKTE STELLEN.
PROXYS HABEN SCHON KOMPLETTE METHODENAUFRUFE UEBER DAS INTERNET FUER IHRE
OBJEKTE DURCHGEFUEHRT; MANCHMAL SIND SIE ABER AUCH NUR GEDULDIGE
STELLVERTRETER FUER ZIEMLICH FAULE OBJEKTE. KAUGUMMIAUTOMATEN UEBERWACHEN
430 DIE ROLLE DES »REMOTE-PROXY . VJ' * 434 EINFUEHRUNGSKURNS
»REMOTE-METHODEN 437 EIN REMOTE-PROXY FUER DEN KAUGUMMIAUTOMATEN 450
HINTER DEN KULISSEN 458 DIE DEFINITION DES PROXY-MUSTERS . 460 DER
VIRTUELLE PROXY 462 ENTWURF DES VIRTUELLEN PROXY FUER DAS CD-COVER 464
WAS HABEN WIR GEMACHT? 470 DER PROXY AUS DER JAVA-API 474 KURZDRAMA:
OBJEKTSCHUTZ ' ' 478 ERZEUGUNG EINES DYNAMISCHEN PROXY 479 DER PROXY-ZOO
488 WERKZEUGE FUER IHREN DESIGN-WERKZEUGKASTEN 491 LOESUNGEN ZU DEN
AUFGABEN 492 XVIII ZUSAMMENGESETZTE MUSTER 1 2 MUSTER VON MUSTERN WER
HAETTE JE GEDACHT, DASS ENTWURFSMUSTER ZUSAMMENARBEITEN KOENNTEN? SIE SIND
JA SCHON ZEUGE DER ERBITTERTEN AUSEINANDERSETZUNGEN AM KAMIN GEWORDEN
(UND DABEI HABEN SIE NOCH NICHT MAL DIE SEITEN MIT DEN KAEMPFEN AUF LEBEN
UND TOD GESEHEN, DIE WIR AUF DRUCK DES VERLAGS WIEDER HERAUSNEHMEN
MUSSTEN). MAL EHRLICH, HAETTEN SIE GEGLAUBT, DASS MUSTER GUT MITEINANDER
AUSKOMMEN KOENNEN? ALSO, OB SIE ES GLAUBEN ODER NICHT: EINIGE DER
LEISTUNGSFAEHIGSTEN OO-DESIGNS SETZEN MEHRERE MUSTER GEMEINSAM EIN.
MACHEN SIE SICH ALSO BEREIT FUER IHREN NAECHSTEN
MUSTER-QUALIFIKATIONSLEVEL, DENN JETZT STEHEN ZUSAMMENGESETZTE MUSTER
AUF DEM PLAN. MUSTERGUELTIGE ZUSAMMENARBEIT 500 EIN WIEDERSEHEN MIT DEN
ENTEN 501 EINEN ADAPTER HINZUFUEGEN 504 TR!.»,.S,,*F EINEN DECORATOR
HINZUFUEGEN 506 EINE FABRIK HINZUFUEGEN 508 JETZT NOCH DAS
COMPOSITE-MUSTER UND EIN ITERATOR 513 ZUM SCHLUSS NOCH EIN OBSERVER 516
WAS WIR INSGESAMT GEMACHT HABEN . 523 AUS DER VOGELENTENPERSPEKTIVE:
DAS KLASSENDIAGRAMM 524 DAS MODEL-VICW-CONTROLER-LIED 526 ENTWURFSMUSTER
UND MVC 528 MVC, DURCH DIE MUSTERBRILLE BETRACHTET 532 MIT MVC DEN TAKT
ANGEBEN . 534 DAS MODEL 537 DER VIEW 539 DER CONTROLLER 542 STRATEGY
INTENSIV 545 ANPASSUNG DES MODELS ! 546 JETZT SIND WIR BEREIT FUER EINEN
HERZCONTROLLER 547 DAS WAR'S! JETZT BRAUCHEN WIR NOCH TESTCODE . 547
MVC UND DAS WEB 549 MUSTER UND MODEL 2 557 WERKZEUGE FUER IHREN
DESIGN-WERKZEUGKASTEN 560 LOESUNGEN ZU DEN UEBUNGEN 561 XIX
INHALTSVERZEICHNIS I 1 3 BESSER LEBEN MIT MUSTERN ENTWURFSMUSTER IN DER
REALEN WELT AAAH, JETZT SIND SIE BEREIT FUER EINE STRAHLENDE NEUE WELT
VOLLER ENTWURFSMUSTER! ABER BEVOR SIE ALL DIE TOLLEN CHANCEN NUTZEN, DIE
SICH IHNEN JETZT BIETEN, MUESSEN WIR NOCH EIN PAAR EINZELHEITEN
BESPRECHEN, DIE SIE IN DER REALEN WELT BEACHTEN MUESSEN -JA, EIN BISSCHEN
KOMPLIZIERTER ALS HIER IN OBJEKTHAUSEN WIRD ES SCHON! SCHAUEN SIE MAL
AUF DIE NAECHSTE SEITE: DORT HABEN WIR EINEN SCHOENEN LEITFADEN, DER IHNEN
DIE EINGEWOEHNUNG ERLEICHTEM WIRD. DER OBJEKTHAUSENER MUSTER-LEITFADEN
578 DEFINITION EINES ENTWURFSMUSTERS 579 DIE ENTWURFSMUSTERDEFINITION
NAEHER BETRACHTET 581 MOEGE DIE MACHT MIT IHNEN SEIN! 582 MUSTERKATALOGE
583 WIE MUSTER AUF DIE WELT KOMMEN ,.- 586 SO, SIE MOECHTEN ALSO SELBST
ENTWURFSMUSTER SCHREIBEN? 587 ORDNUNG IN ENTWURFSMUSTER BRINGEN 589 IN
MUSTERN DENKEN 594 IHR DENKEN WIRD MUSTERGUELTIG , 597 VERGESSEN SIE
NICHT DIE MACHT DES GEMEINSAMEN VOKABULARS 599 DIE FUENF BESTEN WEGE ZU
EINEM GEMEINSAMEN VOKABULAR 600 EINE FAHRT DURCH OBJEKTHAUSEN MIT DER
GANG OF FOUR 601 IHRE REISE HAT GERADE ERST BEGONNEN . 602 DER
MUSTERZOO 604 MIT ANTIMUSTERN GEGEN DIE SCHLECHTIGKEIT 606 WERKZEUGE FUER
IHREN DESIGN-WERKZEUGKASTEN 608 ABSCHIED VON OBJEKTHAUSEN . 609 XX 14
ANHANG: UEBRIG GEBLIEBENE MUSTER NICHT JEDER KANN EINE BERUEHMTHEIT SEIN,
IN DEN LETZTEN ZEHN JAHREN HAT SICH EINE MENGE GEAENDERT. SEIT DIE 1.
AUFLAGE VON ENTWURFSMUSTER: ELEMENTE WIEDERVERWENDBARER
OBJEKTORIENTIERTER SOFTWARE ERSCHIENEN IST, HABEN ENTWICKLER DIESE
MUSTER TAUSENDE VON MALEN ANGEWENDET. DIE MUSTER, DIE IN DIESEM ANHANG
ZUSAMMENGEFASST SIND, SIND VOLLWERTIGE, AUSGEWIESENE, OFFIZIELLE
GOF-MUSTER, SIE WERDEN NUR NICHT SO OFT VERWENDET WIE DIE MUSTER, MIT
DENEN WIR UNS BIS JETZT BESCHAEFTIGT HABEN. DENNOCH WERDEN DIESE MUSTER
MIT VOLLEM RECHT ALS GROSSARTIGE MUSTER BETRACHTET, UND WENN SIE IN EINER
SITUATION SIND, DIE DANACH VERLANGT, KOENNEN SIE SIE MIT ERHOBENEM HAUPT
ANWENDEN. IN DIESEM ANHANG MOECHTEN WIR IHNEN EINE UNGEFAEHRE VORSTELLUNG
DAVON VERMITTELN, WORUM ES BEI DIESEN MUSTERN GEHT. DAS BRIDGE-MUSTER
DAS BUILDER-MUSTER DIE CHAIN OF RESPONSIBILITY DAS FLYWEIGHT-MUSTER DAS
INTERPRETER-MUSTER DAS MEDIATOR-MUSTER DAS MEMENTO-MUSTER DAS
PROTOTYPE-MUSTER DAS VISITOR-MUSTER 612 614 616 618 620 622 624 626 628
1 INDEX 631 XXI |
adam_txt |
ENTWURFSMUSTER VON KOPF BIS FUSS WAERE ES NICHT WUNDER- VOLL, WENN ES EIN
BUCH UEBER ENTWURFSMUSTER GAEBE, DAS MEHR SPASS MACHT ALS EIN BESUCH BEIM
ZAHNARZT UND AUFSCHLUSSREICHER IST ALS EIN STEUERFORMULAR? IST WOHL NUR
EIN TRAUM. ERIC FREEMAN ELISABETH FREEMAN MIT KATHY SIERRA BERT BATES
DEUTSCHE UEBERSETZUNG VON LARS SCHULTEN UND ELKE BUCHHOLZ O'REILLY
BEIJING * CAMBRIDGE * KOELN * PARIS * SEBASTOPOL * TAIPEI * TOKYO
INHALTSVERZEICHNIS 1 WILLKOMMEN BEI DEN ENTWURFSMUSTERN WILLKOMMEN BEI
DEN ENTWURFSMUSTERN IRGENDJEMAND HAT IHRE PROBLEME BEREITS GELOEST, IN
DIESEM KAPITEL LERNEN SIE, WARUM (UND WIE) SIE DIE ERFAHRUNGEN UND
LEKTIONEN VERWERTEN KOENNEN, DIE ANDERE ENTWICKLER GELERNT HABEN, DIE IN
DEN GLEICHEN ENTWURFSSCHWIERIGKEITEN STECKTEN UND DEN TRIP UEBERLEBT
HABEN. DAZU WERDEN WIR EINEN BLICK AUF DIE VERWENDUNG UND DIE VORTEILE
VON ENTWURFSMUSTERN WERFEN, UNS EINIGE GRUNDLEGENDE
OO-ENTWURFSPRINZIPIEN ANSEHEN UND EIN BEISPIEL DAFUER DURCHGEHEN, WIE EIN
BESTIMMTES MUSTER FUNKTIONIERT. AM BESTEN ARBEITEN SIE MIT MUSTERN,
INDEM SIE IHR GEHIRN MIT IHNEN AUFLADEN UND DANN IN IHREN ENTWUERFEN UND
IN BESTEHENDEN ANWENDUNGEN DIE PUNKTE ERKENNEN, AN DENEN SIE SIE
ANWENDEN KOENNEN. AN STELLE VON CODE-WIEDERVERWENDUNG BIETEN IHNEN MUSTER
ERFAHRUNGS-WIEDERVERWENDUNG. DENKEN SIE DARAN: WER KONZEPTE WIE
ABSTRAKTION UND VERERBUNG KENNT, IST DESWEGEN NOCH LANGE KEIN TOLLER
OO-ENTWICKLER. EIN ECHTER GURU UEBERLEGT, WIE ER SEINE ENTWUERFE SO
FLEXIBEL GESTALTEN KANN, DASS SIE LEICHT ZU WARTEN UND ZU AENDERN SIND.
DIE SIMENTE-ANWENDUNG EIKE DENKT UEBER VERERBUNG NACH UND WIE WAERE ES MIT
EINEM INTERFACE? DIE EINE KONSTANTE BEI DER SOFTWARE-ENTWICKLUNG DAS,
WAS VERAENDERLICH IST, VON DEM TRENNEN, WAS GLEICH BLEIBT DAS
ENTENVERHALTEN ENTWERFEN DEN ENTEN-CODE TESTEN ' \ VERHALTEN DYNAMISCH
SETZEN NOCH MAL IM GANZEN: GEKAPSELTES VERHALTEN HAT-EIN KANN IST-EIN
UEBERLEGEN SEIN DAS STRATEGY-MUSTER DIE MACHT EINES GEMEINSAMEN
MUSTERVOKABULARS WIE VERWENDE ICH ENTWURFSMUSTER? WERKZEUGE FUER IHREN
DESIGN-WERKZEUGKASTEN LOESUNGEN ZU DEN AUFGABEN *'**.*\T- F RT 2 5 6 8 10
11 18 20 22 23 24 28 29 32 34 VIII DAS 2 IHRE OBJEKTE AUF DEM LAUFENDEN
HALTEN VERPASSEN SIE NICHT, WENN ETWAS INTERESSANTES PASSIERT! WIR HABEN
EIN MUSTER, DAS IHRE OBJEKTE AUF DEM LAUFENDEN HAELT, WENN ETWAS
PASSIERT, DAS SIE INTERESSIEREN KOENNTE. OBJEKTE KOENNEN SOGAR ZUR
LAUFZEIT ENTSCHEIDEN, OB SIE INFORMIERT WERDEN MOECHTEN. DAS
OBSERVER-MUSTER IST EINS DER MUSTER, DIE IM JDK AM HAEUFIGSTEN VERWENDET
WERDEN. UND ES IST UNGLAUBLICH NUETZLICH. IN DIESEM KAPITEL SEHEN WIR UNS
AUSSERDEM EINS-ZU-VIELE- BEZIEHUNGEN UND LOCKERE BINDUNGEN AN. MIT DEM
OBSERVER-MUSTER WERDEN SIE ZUM MITTELPUNKT DER MUSTER-PARTY. ; DIE
WETTERSTATION-ANWENDUNG IM UEBERBLICK 39 GESTATTEN: DAS OBSERVER-MUSTER
.**.-. 44 HERAUSGEBER + ABONNENTEN * OBSERVER-MUSTER 45
FUENF-MINUTEN-DRAMA: EIN SUBJEKT UNTER BEOBACHTUNG 48 DIE DEFINITION DES
OBSERVER-MUSTERS ; 51 DIE MACHT DER LOCKEREN BINDUNG 53 DIE
WETTERSTATION ENTWERFEN . 56 DIE WETTERSTATION IMPLEMENTIEREN 57 JAVAS
EINGEBAUTES OBSERVER-MUSTER VERWENDEN 64 DIE DUNKLE SEITE VON
JAVA.UTIL.OBSERVABLE 71 WERKZEUGE FUER IHREN DESIGN-WERKZEUGKASTEN 74 DIE
LOESUNGEN ZU DEN AUFGABEN 77 DAS OBJEKT, DAS D T IX INHALTSVERZEICHNIS 3
OBJEKTE DEKORIEREN -I-* NENNEN WIR DIESES KAPITEL EINFACH »VERERBST DU
NOCH ODER DESIGNST DU SCHON?. WIR UNTERSUCHEN NOCH EINMAL EINEN
TYPISCHEN FALL UEBERSTRAPAZIERTER VERERBUNG, UND SIE WERDEN LERNEN, WIE
SIE IHRE KLASSEN MIT HILFE EINER FORM DER OBJEKT-ZUSAMMENSETZUNG ERST
ZUR LAUFZEIT »DEKORIEREN. WARUM? WENN IHNEN DIE TECHNIKEN DES
DEKORIERENS EINMAL VERTRAUT SIND, KOENNEN SIE IHREN OBJEKTEN (ODER DEN
OBJEKTEN ANDERER) NEUE AUFGABEN GEBEN, OHNE DEN CODE DER ZU GRUNDE
LIEGENDEN KLASSE AENDERN ZU MUESSEN. " ^ ' FRUEHER DACHTE ICH IMMER, ECHTE
MAENNER BILDEN GRUNDSAETZLICH FUER ALLES UNTERKLASSEN. BIS ICH GELERNT
HABE, WELCHE MACHT MAN IN DEN HAENDEN HAELT, WENN MAN ZUR LAUFZEIT UND
NICHT ZUR KOMPILIERZEIT ERWEITERT. UND SEHEN SIE MICH HEUTE MAL AN!
WILLKOMMEN BEI STERNBACK-KAFTEE DAS OFFEN/GESCHLOSSEN-PRINZIP DUERFEN WIR
VORSTELLEN: DAS DECORATOR-MUSTER! EIN GETRAENK MIT DEKORIERERN AUFBAUEN
DIE DEFINITION DES DECORATOR-MUSTERS GETRAENKE DEKORIEREN DEN
STERNBACK-CODE SCHREIBEN DEKORIERER AUS DER PRAXIS: JAVA I/O EINEN
EIGENEN I/O-DEKORIERER SCHREIBEN WERKZEUGE FUER IHREN
DESIGN-WERKZEUGKASTEN LOESUNGEN ZU DEN UEBUNGEN 80 86 88 89 91 93 95 100
102 105 106 4 BACKEN IN OO-QUALITAET MACHEN SIE SICH BEREIT, EIN PAAR
LOCKER GEBUNDENE 00- ENTWUERFE ZU BACKEN. DAS ERSTELLEN VON OBJEKTEN HAT
MEHR ZU BIETEN ALS DIE SIMPLE VERWENDUNG DES NEW-OPERATORS. SIE WERDEN
LERNEN, DASS INSTANTIIERUNG EINE AKTIVITAET IST, DIE NICHT IMMER IN DER
OEFFENTLICHKEIT VERUEBT WERDEN SOLLTE UND OFT ZU BINDUNGSPROBLEMEN FUEHREN
KANN. UND DAS WOLLEN SIE DOCH NICHT, ODER? LERNEN SIE, WIE SIE DAS
FACTORY-MUSTER VOR LAESTIGEN ABHAENGIGKEITEN RETTEN KANN. DIE ASPEKTE
IDENTIFIZIEREN, DIE VERAENDERLICH SIND 112 DIE OBJEKT-ERSTELLUNG KAPSELN
114 EINE EINFACHE PIZZAFABRIK ERSTELLEN 115 DIE DEFINITION DER EINFACHEN
FABRIK 117 EIN FRAMEWORK FUER DIE PIZZERIA 120 DIE UNTERKLASSEN
ENTSCHEIDEN LASSEN 121 EROEFFNEN WIR ALSO EINE PIZZERIA 123 EINE
FABRIKMETHODE DEKLARIEREN 125 ZEIT, DAS FACTORY METHOD-MUSTER ZU TREFFEN
131 PARALLELE KLASSENHIERARCHIEN 132 DIE DEFINITION DES FACTORY
METHOD-MUSTERS 134 EINE SEHR ABHAENGIGE PIZZERIA 137 EIN BLICK AUF
OBJEKT-ABHAENGIGKEITEN 138 DAS PRINZIP DER UMKEHRUNG DER ABHAENGIGKEITEN
139 INZWISCHEN IN DER PIZZERIA ' 144 ZUTATENFAMILIEN 145 DIE
ZUTATENFABRIKEN AUFBAUEN 146 WAS WIR GEMACHT HABEN 153 DIE DEFINITION
DES ABSTRACT FACTORY-MUSTERS 156 FACTORY METHOD UND ABSTRACT FACTORY IM
VERGLEICH 160 WERKZEUGE FUER IHREN DESIGN-WERKZEUGKASTEN 162 LOESUNGEN ZU
DEN UEBUNGEN 164 XI INHALTSVERZEICHNIS 5 DAS EIN EINZIGARTIGES OBJEKT
UNSER NAECHSTER HALT IST DAS SINGLETON-MUSTER, UNSERE FAHRKARTE ZUR
ERSTELLUNG EINZIGARTIGER OBJEKTE VON KLASSEN, VON DENEN ES NUR EINE
EINZIGE INSTANZ GEBEN KANN. VIELLEICHT FREUT ES SIE ZU ERFAHREN, DASS
DAS SINGLETON-MUSTER IN BEZUG AUF DAS KLASSENDIAGRAMM DAS EINFACHSTE
ALLER MUSTER IST. DAS DIAGRAMM ENTHAELT TATSAECHLICH NUR EINE EINZIGE
KLASSE! ABER MACHEN SIE ES SICH NICHT ZU BEQUEM. TROTZ DER EINFACHHEIT
IN BEZUG AUF DAS KLASSENDIAGRAMM WERDEN WIR AUF EINE REIHE BUCKEL UND
SCHLAGLOECHER IN SEINER IMPLEMENTIERUNG STOSSEN. SIE SCHNALLEN SICH ALSO
BESSER AN. DAS KLEINE SINGLETON 171 DIE KLASSISCHE IMPLEMENTIERUNG DES
SINGLETON-MUSTERS SEZIEREN 173 BEKENNTNISSE EINES SINGLETON , 174 DIE
SCHOKOLADENFABRIK ; 175 DEFINITION DES SINGLCTON-MUSTERS 177 HOUIRTORR,
WIR HABEN EIN PROBLEM . : ' 178 SPIELEN SIE.]VM , I: 179 MIT
MULTITHREADING KLARKOMMEN 180 FRAGEN UND ANTWORTEN ZUM SINGLE TON 184
WERKZEUGE FUER IHREN DESIGN-WERKZEUGKASTEN 186 LOESUNGEN ZU DEN UEBUNGEN
188 XII 6 AUFRUFE EINKAPSELN IN DIESEM KAPITEL HEBEN WIR DIE KAPSELUNG
NOCH EINMAL AUF EIN GANZ NEUES NIVEAU: WIR WERDEN METHODENAUFRUFE
EINKAPSELN. JA, WIRKLICH INDEM WIR DEN METHODENAUFRUF KAPSELN, KOENNEN
WIR TEILE VON BERECHNUNGEN EINFRIEREN, DAMIT DAS OBJEKT, DAS DIE
BERECHNUNG AUFRUFT, SICH NICHT DARUM KUEMMERN MUSS, WIE DIESE DINGE
GEMACHT WERDEN. ES VERWENDET EINFACH UNSERE EINGEFRORENE METHODE, UM SIE
AUSFUEHREN ZU LASSEN. MIT DIESEN EINGEKAPSELTEN METHODENAUFRUFEN KOENNEN
WIR AUSSERDEM EINIGE UNVERSCHAEMT GESCHICKTE DINGE TUN, SIE BEISPIELSWEISE
SPEICHERN, UM SIE ZU PROTOKOLLIEREN, ODER WIEDERVERWENDEN, UM UNSEREM
CODE EINE RUECKGAENGIG-FUNKTIONALITAET ZU SPENDIEREN. DIE FERNSTEUERUNG 193
WERFEN WIR EINEN BLICK AUF DIE KLASSEN DER HERSTELLER 194 INZWISCHEN IM
RESTAURANT 197 SEHEN WIR UNS DAS ZUSAMMENSPIEL ETWAS GRUENDLICHER AN 198
ROLLEN UND VERANTWORTLICHKEITEN IM RESTAURANT OBJEKTHAUSEN 199 VOM
RESTAURANT ZUM COMMAND-MUSTER 201 UNSER ERSTES BEFEHL-OBJEKT 203 DIE
DEFINITION DES COMMAND-MUSTERS -"'.* 206 DEN FERNSTEUERUNGSPLAETZEN
BEFEHLE ZUWEISEN ' 209 DIE FERNBEDIENUNG IMPLEMENTIEREN 210 DIE
FERNSTEUERUNG IN GANG SETZEN ' . 212 ZEIT, DIESE DOKUMENTATION ZU
SCHREIBEN 215 EINEN STATUS VERWENDEN, UM RUECKGAENGIG ZU IMPLEMENTIEREN
220 JEDE FERNSTEUERUNG BRAUCHT EINEN PARTY-MODUS! 224 EINEN MAKRO-BEFEHL
VERWENDEN 225 WEITERE VERWENDUNGEN: WARTESCHLANGEN FUER BEFEHLE 228
WEITERE VERWENDUNGEN: ANFRAGEN PROTOKOLLIEREN 229 WERKZEUGE FUER IHREN
DESIGN-WERKZEUGKASTEN 230 LOESUNGEN ZU DEN AUFGABEN 232 XIII
INHALTSVERZEICHNIS DIE ADAPTER- UND STECKDOSE ADAPTER STECKER
ANPASSUNGSFAEHIGKEIT BEWEISEN IN DIESEM KAPITEL WERDEN WIR UNS AN
UNMOEGLICHEN DINGEN VERSUCHEN - EINEN RECHTECKIGEN PFLOCK IN EIN RUNDES
LOCH ZU STECKEN BEISPIELSWEISE. KLINGT UNMOEGLICH? NICHT, WENN MAN
DESIGN- PATTERNS HAT. ERINNERN SIE SICH AN DAS DECORATOR-MUSTER? WIR
HABEN OBJEKTE UMHUELLT, UM IHNEN NEUE VERANTWORTLICHKEITEN ZU GEBEN.
JETZT WERDEN WIR EINIGE OBJEKTE MIT EINEM ANDEREN ZIEL EINPACKEN: UM
IHREN SCHNITTSTELLEN DEN ANSCHEIN ZU VERLEIHEN, DASS SIE WIE ETWAS
AUSSEHEN, DAS SIE NICHT SIND. WARUM SOLLTEN WIR DAS TUN? WIR HABEN DAMIT
DIE MOEGLICHKEIT, EIN DESIGN, DAS EINE BESTIMMTE SCHNITTSTELLE ERWARTET,
AN EINE KLASSE ANZUPASSEN, DIE EINE ANDERE SCHNITTSTELLE IMPLEMENTIERT.
UND DAS IST NICHT ALLES. WAEHREND WIR DABEI SIND, WERDEN WIR UNS NOCH EIN
WEITERES MUSTER ANSEHEN, DAS OBJEKTE UMHUELLT, UM IHRE SCHNITTSTELLE ZU
VEREINFACHEN. ADAPTER, WO WIR NUR HINSCHAUEN OBJEKTORIENTIERTE ADAPTER
DAS ADAPTER-MUSTER ERKLAERT DIE DEFINITION DES ADAPTER-MUSTERS OBJEKT-
UND KLASSEN-ADAPTER KAMINGESPRAECHE: OBJEKT- UND KLASSEN-ADAPTER ADAPTER
AUS DEM WIRKLICHEN LEBEN EINEN ENUMERATOR AN EINEN ITERATOR ANPASSEN
KAMINGESPRAECHE: DECORATOR- UND ADAPTER-MUSTER GEMUETLICHES HEIMKINO
BELEUCHTUNG, KAMERA, FASSADE DIE HEIMKINO-FASSADE AUIBAUEN DIE
DEFINITION DES FACADE-MUSTERS DAS PRINZIP DER VERSCHWIEGENHEIT WERKZEUGE
FUER IHREN DESIGN-WERKZEUGKASTEN LOESUNGEN ZU DEN AUFGABEN XIV 236 237 241
243 244 247 248 249 252 255 258 261 264 265 270 272 8 S TEMPLATE
ALGORITHMEN EINKAPSELN WIR SIND AUF DEM TOTALEN KAPSELUNGSTRIP. WIR
HABEN DIE OBJEKT-ERSTELLUNG EINGEKAPSELT, METHODENAUFRUFE, KOMPLEXE
SCHNITTSTELLEN, ENTEN, PIZZAS . WAS KOENNTE ALS NAECHSTES KOMMEN? WIR
WERDEN DAZU UEBERGEHEN, TEILE VON ALGORITHMEN ZU KAPSELN, DAMIT
UNTERKLASSEN SICH JEDERZEIT IN EINE BERECHNUNG EINKAPSELN KOENNEN, WENN
SIE DAS MOECHTEN. AUSSERDEM WERDEN WIR EINIGES UEBER EIN ENTWURFSPRINZIP
LERNEN, DAS VON HOLLYWOOD INSPIRIERT IST. TEE Q TALLUJCTA» THTT »HL!
1 SVFWD-,. AI» UEBT KOFF EINTIALTFGES »ETRAENK Q ITWAT WAJJCR KOEHFH Q
AUFGLEHN 0 »TRAENK IN ISJIE ICHWTEN 0 ZUTATEN HINZUFUEGEN * S -*(. AB
*** T ^ ' KAFF EE 0 5J.II» ** "**" EIN PAAR KAFFEE- UND TEE-KLASSEN
(IN JAVA) ZUSAMMENRUEHREN 277 DUERFTE ICH VIELLEICHT IHREN KAFFEE, TEE
ABSTRAHIEREN? 280 DEN ENTWURF WEITERENTWICKELN 281 ZUBEREITUNGSREZEPTO
ABSTRAHIEREN 282 WAS ALSO HABEN WIR GEMACHT? 285 DUERFEN WIR VORSTELLEN:
DAS TEMPLATE METHOD-MUSTER! 286 KOCHEN WIR DOCH MAL ETWAS TEE . 287
WAS HAT UNS DAS TEMPLATE METHOD-MUSTER GEBRACHT? . . 288 DIE DEFINITION
DES TEMPLATE METHOD-MUSTERS : 289 HAKEN WIR UNS BEI EINER
TEMPLATE-METHODE EIN . , 292 DEN HOOK VERWENDEN 293 FUEHREN WIR DEN
TESTLAUF AUS 294 DAS HOLLYWOOD-PRINZIP 296 DAS HOLLYWOOD-PRINZIP UND DAS
TEMPLATE METHOD-MUSTER 297 TEMPLATE-METHODEN IM WIRKLICHEN LEBEN 299 MIT
DEM TEMPLATE METHOD-MUSTER SORTIEREN 300 WIR HABEN EIN PAAR ENTEN, DIE
SORTIERT WERDEN MUESSEN 301 ENTEN MIT ENTEN VERGLEICHEN 302 DER AUFBAU
EINER ENTEN-SORTIERMASCHINE 304 SWINGING MIT FRAMES 306 KAMINGESPRAECHE:
TEMPLATE METHOD UND STRATCGY 308 WERKZEUGE FUER IHREN
DESIGN-WERKZEUGKASTEN 311 LOESUNGEN ZU DEN AUFGABEN 312 XV R
INHALTSVERZEICHNIS DIE ITERATPR- UND ERFOLGREICHE KOLLEKTIONEN ES GIBT
VIELE MOEGLICHKEITEN, OBJEKTE IN EINE SAMMLUNG ZU PACKEN. STECKEN SIE SIE
IN EIN ARRAY-, STACK-, -LIST- ODER HASHTABLE-OBJEKT. SIE HABEN DIE FREIE
AUSWAHL. UND JEDE HAT IHRE VOR- UND NACHTEILE. ABER IRGENDWANN WIRD IHR
CLIENT UEBER DIESE OBJEKTE ITERIEREN WOLLEN. WERDEN SIE IHM IHRE
IMPLEMENTIERUNG ZEIGEN, WENN ER DAS TUT? WIR HOFFEN GANZ ENTSCHIEDEN,
DASS SIE DAS NICHT TUN WERDEN! ES WAERE EINFACH NICHT PROFESSIONELL. SIE
MUESSEN IHRE KARRIERE NICHT RISKIEREN. SIE WERDEN SEHEN, WIE SIE ES
CLIENTS ERMOEGLICHEN, UEBER IHRE OBJEKT ZU ITERIEREN, OHNE DASS ER JE
SIEHT, WIE SIE IHRE OBJEKTE SPEICHERN. SIE WERDEN AUCH LERNEN, WIE SIE
SUPER COLLECTIONS VON OBJEKTEN PFLEGEN, DIE MIT EINEM EINZIGEN SATZ
EINIGE BEEINDRUCKENDE DATENSTRUKTUREN UEBERSPRINGEN KOENNEN. UND WENN
IHNEN DAS IMMER NOCH NICHT AUSREICHT, WERDEN SIE AUSSERDEM EIN ODER ZWEI
DINGE UEBER OBJEKTVERANTWORTLICHKEIT LERNEN. ALLE SPEISEKARTEN RESTAURANT
OBJEKTHAUSEN UND PFANNKUCHENHAUS OBJEKTHAUSEN FUSIONIEREN 316 JUPPS UND
WIMS SPEISEKARTEN-IMPLEMENTIERUNGEN 318 KOENNEN WIR DIE ITERATION
KAPSELN? 323 DARF ICH VORSTELLEN: DAS ITERATOR-MUSTER 325 DER
RESTAURANTSPEISEKARTE EINEN ITERATOR HINZUFUEGEN 326 BLICK AUF DEN
ENTWURF 33 1 MIT JAVA.UTIL.ITERATOR SAUBER MACHEN 333 WAS BRINGT UNS
DAS? 335 DIE DEFINITION DES ITERATOR-MUSTERS ^ 336 EINE EINZIGE
VERANTWORTLICHKEIT 339 ITERATOREN UND COLLECTIONS 348 ITERATOREN UND
COLLECTIONS IN JAVA 5 349 UND GERADE ALS WIR DACHTEN, ALLES WAERE IN
TROCKENEN TUECHERN . 353 DIE DEFINITION DES COMPOSITE-MUSTERS 356 MIT
DEM COMPOSITE-MUSTER SPEISEKARTEN ENTWERFEN 359 DIE
KOMPOSITA-SPEISEKARTE IMPLEMENTIEREN 362 EIN RUECKBLICK AUF ITERATOR 368
DER NULL-ITERATOR 372 DIE MAGIE VON ITERATOREN UND KOMPOSITA ZUSAMMEN
374 WERKZEUGE FUER IHREN DESIGN-WERKZEUGKASTEN 380 LOESUNGEN ZU DEN
AUFGABEN 381 XVI STATE-MUSTER 1 0 DIE ZUSTAENDE IN OBJEKTHAUSEN EINE KAUM
BEKANNTE TATSACHE IST: DAS STRATEGY- UND DAS STATE-MUSTER SIND
ZWILLINGE, DIE BEI DER GEBURT GETRENNT WURDEN. WIE SIE SCHON WISSEN, HAT
DAS STRATEGY-MUSTER SPAETER EIN SUPERERFOLGREICHES GESCHAEFT MIT
AUSTAUSCHBAREN ALGORITHMEN AUFGEBAUT. DAS STATE-PATTERN HINGEGEN HAT
EINEN ANDEREN - VIELLEICHT EDELMUETIGEREN - WEG EINGESCHLAGEN: ES HILFT
OBJEKTEN, IHR VERHALTEN MITTELS VERAENDERUNG IHRES INTERNEN ZUSTANDS ZU
KONTROLLIEREN. OFT HOERT MAN ES ZU SEINER OBJEKT-KLIENTEL SAGEN: »SPRECHT
MIR NACH: ICH BIN GUT GENUG, ICH BIN KLUG GENUG, VERDAMMT NOCH MAL.
WIE IMPLEMENTIEREN WIR EINEN ZUSTAND? 387 EINFUEHRUNGSKURS
»ZUSTANDSAUTOMATEN 388 DER CODE FUER EINEN ERSTEN ZUSTANDSAUTOMATEN 390
DAS MUSSTE JA KOMMEN . EINE AENDERUNGSANFRAGE! 394 ZUSTAENDE WIE BEI
HEMPELS UNTERM SOFA . 396 DEFINITION DES ZUSTANDS-INTERFACE UND DER
ZUSTANDSKIASSEN 399 IMPLEMENTIERUNG UNSERER ZUSTANDSKIASSEN 401 UMBAU
DES KAUGUMMIAUTOMATEN 402 DIE DEFINITION DES STATE-MUSTERS 410 STATE UND
STRATEGY 411 GESUNDHEITSCHECK: STIMMT ALLES 417 DAS HAETTEN WIR BEINAHE
VERGESSEN! 420 WERKZEUGE FUER IHREN DESIGN-WERKZEUGKASTEN 423 LOESUNGEN ZU
DEN UEBUNGEN 424 XVII INHALTSVERZEICHNIS ?ROX/-MUSTER 1 1 DEN ZUGRIFF AUF
OBJEKTE KONTROLLIEREN HABEN SIE SCHON MAL »GOOD COP - BAD COP GESPIELT?
SIE SIND DER GUTE POLIZIST UND HELFEN DEN MENSCHEN NETT UND FREUNDLICH.
ABER SIE MOECHTEN EINFACH NICHT JEDEM ZU DIENSTEN SEIN, UND DESHALB HABEN
SIE DEN BOESEN POLIZISTEN, DER DEN ZUGANG ZU IHNEN KONTROLLIERT. GENAU
DAS TUN PROXYS: SIE KONTROLLIEREN UND STEUERN DEN ZUGANG ZU ETWAS
ANDEREM. WIE SIE SEHEN WERDEN, KOENNEN PROXYS SICH AUF GANZ
UNTERSCHIEDLICHE ART UND WEISE VOR IHRE ZUGEHOERIGEN OBJEKTE STELLEN.
PROXYS HABEN SCHON KOMPLETTE METHODENAUFRUFE UEBER DAS INTERNET FUER IHRE
OBJEKTE DURCHGEFUEHRT; MANCHMAL SIND SIE ABER AUCH NUR GEDULDIGE
STELLVERTRETER FUER ZIEMLICH FAULE OBJEKTE. KAUGUMMIAUTOMATEN UEBERWACHEN
430 DIE ROLLE DES »REMOTE-PROXY . VJ' * 434 EINFUEHRUNGSKURNS
»REMOTE-METHODEN 437 EIN REMOTE-PROXY FUER DEN KAUGUMMIAUTOMATEN 450
HINTER DEN KULISSEN 458 DIE DEFINITION DES PROXY-MUSTERS . 460 DER
VIRTUELLE PROXY 462 ENTWURF DES VIRTUELLEN PROXY FUER DAS CD-COVER 464
WAS HABEN WIR GEMACHT? 470 DER PROXY AUS DER JAVA-API 474 KURZDRAMA:
OBJEKTSCHUTZ ' ' 478 ERZEUGUNG EINES DYNAMISCHEN PROXY 479 DER PROXY-ZOO
488 WERKZEUGE FUER IHREN DESIGN-WERKZEUGKASTEN 491 LOESUNGEN ZU DEN
AUFGABEN 492 XVIII ZUSAMMENGESETZTE MUSTER 1 2 MUSTER VON MUSTERN WER
HAETTE JE GEDACHT, DASS ENTWURFSMUSTER ZUSAMMENARBEITEN KOENNTEN? SIE SIND
JA SCHON ZEUGE DER ERBITTERTEN AUSEINANDERSETZUNGEN AM KAMIN GEWORDEN
(UND DABEI HABEN SIE NOCH NICHT MAL DIE SEITEN MIT DEN KAEMPFEN AUF LEBEN
UND TOD GESEHEN, DIE WIR AUF DRUCK DES VERLAGS WIEDER HERAUSNEHMEN
MUSSTEN). MAL EHRLICH, HAETTEN SIE GEGLAUBT, DASS MUSTER GUT MITEINANDER
AUSKOMMEN KOENNEN? ALSO, OB SIE ES GLAUBEN ODER NICHT: EINIGE DER
LEISTUNGSFAEHIGSTEN OO-DESIGNS SETZEN MEHRERE MUSTER GEMEINSAM EIN.
MACHEN SIE SICH ALSO BEREIT FUER IHREN NAECHSTEN
MUSTER-QUALIFIKATIONSLEVEL, DENN JETZT STEHEN ZUSAMMENGESETZTE MUSTER
AUF DEM PLAN. MUSTERGUELTIGE ZUSAMMENARBEIT 500 EIN WIEDERSEHEN MIT DEN
ENTEN 501 EINEN ADAPTER HINZUFUEGEN 504 TR!.»,.S,,*F EINEN DECORATOR
HINZUFUEGEN 506 EINE FABRIK HINZUFUEGEN 508 JETZT NOCH DAS
COMPOSITE-MUSTER UND EIN ITERATOR 513 ZUM SCHLUSS NOCH EIN OBSERVER 516
WAS WIR INSGESAMT GEMACHT HABEN . 523 AUS DER VOGELENTENPERSPEKTIVE:
DAS KLASSENDIAGRAMM 524 DAS MODEL-VICW-CONTROLER-LIED 526 ENTWURFSMUSTER
UND MVC 528 MVC, DURCH DIE MUSTERBRILLE BETRACHTET 532 MIT MVC DEN TAKT
ANGEBEN . 534 DAS MODEL 537 DER VIEW 539 DER CONTROLLER 542 STRATEGY
INTENSIV 545 ANPASSUNG DES MODELS ! 546 JETZT SIND WIR BEREIT FUER EINEN
HERZCONTROLLER 547 DAS WAR'S! JETZT BRAUCHEN WIR NOCH TESTCODE . 547
MVC UND DAS WEB 549 MUSTER UND MODEL 2 557 WERKZEUGE FUER IHREN
DESIGN-WERKZEUGKASTEN 560 LOESUNGEN ZU DEN UEBUNGEN 561 XIX
INHALTSVERZEICHNIS I 1 3 BESSER LEBEN MIT MUSTERN ENTWURFSMUSTER IN DER
REALEN WELT AAAH, JETZT SIND SIE BEREIT FUER EINE STRAHLENDE NEUE WELT
VOLLER ENTWURFSMUSTER! ABER BEVOR SIE ALL DIE TOLLEN CHANCEN NUTZEN, DIE
SICH IHNEN JETZT BIETEN, MUESSEN WIR NOCH EIN PAAR EINZELHEITEN
BESPRECHEN, DIE SIE IN DER REALEN WELT BEACHTEN MUESSEN -JA, EIN BISSCHEN
KOMPLIZIERTER ALS HIER IN OBJEKTHAUSEN WIRD ES SCHON! SCHAUEN SIE MAL
AUF DIE NAECHSTE SEITE: DORT HABEN WIR EINEN SCHOENEN LEITFADEN, DER IHNEN
DIE EINGEWOEHNUNG ERLEICHTEM WIRD. DER OBJEKTHAUSENER MUSTER-LEITFADEN
578 DEFINITION EINES ENTWURFSMUSTERS 579 DIE ENTWURFSMUSTERDEFINITION
NAEHER BETRACHTET 581 MOEGE DIE MACHT MIT IHNEN SEIN! 582 MUSTERKATALOGE
583 WIE MUSTER AUF DIE WELT KOMMEN ,.- 586 SO, SIE MOECHTEN ALSO SELBST
ENTWURFSMUSTER SCHREIBEN? 587 ORDNUNG IN ENTWURFSMUSTER BRINGEN 589 IN
MUSTERN DENKEN 594 IHR DENKEN WIRD MUSTERGUELTIG , 597 VERGESSEN SIE
NICHT DIE MACHT DES GEMEINSAMEN VOKABULARS 599 DIE FUENF BESTEN WEGE ZU
EINEM GEMEINSAMEN VOKABULAR 600 EINE FAHRT DURCH OBJEKTHAUSEN MIT DER
GANG OF FOUR 601 IHRE REISE HAT GERADE ERST BEGONNEN . 602 DER
MUSTERZOO 604 MIT ANTIMUSTERN GEGEN DIE SCHLECHTIGKEIT 606 WERKZEUGE FUER
IHREN DESIGN-WERKZEUGKASTEN 608 ABSCHIED VON OBJEKTHAUSEN . 609 XX 14
ANHANG: UEBRIG GEBLIEBENE MUSTER NICHT JEDER KANN EINE BERUEHMTHEIT SEIN,
IN DEN LETZTEN ZEHN JAHREN HAT SICH EINE MENGE GEAENDERT. SEIT DIE 1.
AUFLAGE VON ENTWURFSMUSTER: ELEMENTE WIEDERVERWENDBARER
OBJEKTORIENTIERTER SOFTWARE ERSCHIENEN IST, HABEN ENTWICKLER DIESE
MUSTER TAUSENDE VON MALEN ANGEWENDET. DIE MUSTER, DIE IN DIESEM ANHANG
ZUSAMMENGEFASST SIND, SIND VOLLWERTIGE, AUSGEWIESENE, OFFIZIELLE
GOF-MUSTER, SIE WERDEN NUR NICHT SO OFT VERWENDET WIE DIE MUSTER, MIT
DENEN WIR UNS BIS JETZT BESCHAEFTIGT HABEN. DENNOCH WERDEN DIESE MUSTER
MIT VOLLEM RECHT ALS GROSSARTIGE MUSTER BETRACHTET, UND WENN SIE IN EINER
SITUATION SIND, DIE DANACH VERLANGT, KOENNEN SIE SIE MIT ERHOBENEM HAUPT
ANWENDEN. IN DIESEM ANHANG MOECHTEN WIR IHNEN EINE UNGEFAEHRE VORSTELLUNG
DAVON VERMITTELN, WORUM ES BEI DIESEN MUSTERN GEHT. DAS BRIDGE-MUSTER
DAS BUILDER-MUSTER DIE CHAIN OF RESPONSIBILITY DAS FLYWEIGHT-MUSTER DAS
INTERPRETER-MUSTER DAS MEDIATOR-MUSTER DAS MEMENTO-MUSTER DAS
PROTOTYPE-MUSTER DAS VISITOR-MUSTER 612 614 616 618 620 622 624 626 628
1 INDEX 631 XXI |
any_adam_object | 1 |
any_adam_object_boolean | 1 |
author | Freeman, Eric 1965- Robson, Elisabeth |
author_GND | (DE-588)132058332 (DE-588)132058324 |
author_facet | Freeman, Eric 1965- Robson, Elisabeth |
author_role | aut aut |
author_sort | Freeman, Eric 1965- |
author_variant | e f ef e r er |
building | Verbundindex |
bvnumber | BV021286998 |
classification_rvk | ST 230 ST 231 ST 330 |
ctrlnum | (OCoLC)314816075 (DE-599)BVBBV021286998 |
discipline | Informatik |
discipline_str_mv | Informatik |
edition | 1. Aufl. |
format | Book |
fullrecord | <?xml version="1.0" encoding="UTF-8"?><collection xmlns="http://www.loc.gov/MARC21/slim"><record><leader>00000nam a2200000 c 4500</leader><controlfield tag="001">BV021286998</controlfield><controlfield tag="003">DE-604</controlfield><controlfield tag="005">20121122</controlfield><controlfield tag="007">t|</controlfield><controlfield tag="008">060111s2006 xx ad|| |||| 00||| ger d</controlfield><datafield tag="020" ind1=" " ind2=" "><subfield code="a">3897214210</subfield><subfield code="9">3-89721-421-0</subfield></datafield><datafield tag="020" ind1=" " ind2=" "><subfield code="a">9783897214217</subfield><subfield code="9">978-3-89721-421-7</subfield></datafield><datafield tag="035" ind1=" " ind2=" "><subfield code="a">(OCoLC)314816075</subfield></datafield><datafield tag="035" ind1=" " ind2=" "><subfield code="a">(DE-599)BVBBV021286998</subfield></datafield><datafield tag="040" ind1=" " ind2=" "><subfield code="a">DE-604</subfield><subfield code="b">ger</subfield><subfield code="e">rakwb</subfield></datafield><datafield tag="041" ind1="0" ind2=" "><subfield code="a">ger</subfield></datafield><datafield tag="049" ind1=" " ind2=" "><subfield code="a">DE-1051</subfield><subfield code="a">DE-473</subfield><subfield code="a">DE-19</subfield><subfield code="a">DE-861</subfield><subfield code="a">DE-824</subfield><subfield code="a">DE-573</subfield><subfield code="a">DE-858</subfield><subfield code="a">DE-523</subfield><subfield code="a">DE-526</subfield><subfield code="a">DE-634</subfield><subfield code="a">DE-83</subfield><subfield code="a">DE-11</subfield><subfield code="a">DE-2070s</subfield></datafield><datafield tag="084" ind1=" " ind2=" "><subfield code="a">ST 230</subfield><subfield code="0">(DE-625)143617:</subfield><subfield code="2">rvk</subfield></datafield><datafield tag="084" ind1=" " ind2=" "><subfield code="a">ST 231</subfield><subfield code="0">(DE-625)143618:</subfield><subfield code="2">rvk</subfield></datafield><datafield tag="084" ind1=" " ind2=" "><subfield code="a">ST 330</subfield><subfield code="0">(DE-625)143663:</subfield><subfield code="2">rvk</subfield></datafield><datafield tag="100" ind1="1" ind2=" "><subfield code="a">Freeman, Eric</subfield><subfield code="d">1965-</subfield><subfield code="e">Verfasser</subfield><subfield code="0">(DE-588)132058332</subfield><subfield code="4">aut</subfield></datafield><datafield tag="240" ind1="1" ind2="0"><subfield code="a">Head first design patterns</subfield></datafield><datafield tag="245" ind1="1" ind2="0"><subfield code="a">Entwurfsmuster von Kopf bis Fuß</subfield><subfield code="c">Eric Freeman ; Elisabeth Freeman</subfield></datafield><datafield tag="250" ind1=" " ind2=" "><subfield code="a">1. Aufl.</subfield></datafield><datafield tag="264" ind1=" " ind2="1"><subfield code="a">Beijing [u.a.]</subfield><subfield code="b">O'Reilly</subfield><subfield code="c">2006</subfield></datafield><datafield tag="300" ind1=" " ind2=" "><subfield code="a">XXXIV, 638 S.</subfield><subfield code="b">Ill., graph. Darst.</subfield></datafield><datafield tag="336" ind1=" " ind2=" "><subfield code="b">txt</subfield><subfield code="2">rdacontent</subfield></datafield><datafield tag="337" ind1=" " ind2=" "><subfield code="b">n</subfield><subfield code="2">rdamedia</subfield></datafield><datafield tag="338" ind1=" " ind2=" "><subfield code="b">nc</subfield><subfield code="2">rdacarrier</subfield></datafield><datafield tag="650" ind1="0" ind2="7"><subfield code="a">Informationstechnik</subfield><subfield code="0">(DE-588)4026926-7</subfield><subfield code="2">gnd</subfield><subfield code="9">rswk-swf</subfield></datafield><datafield tag="650" ind1="0" ind2="7"><subfield code="a">Entwurfsmuster</subfield><subfield code="0">(DE-588)4546895-3</subfield><subfield code="2">gnd</subfield><subfield code="9">rswk-swf</subfield></datafield><datafield tag="650" ind1="0" ind2="7"><subfield code="a">Java Standard Edition 8</subfield><subfield code="0">(DE-588)1049861094</subfield><subfield code="2">gnd</subfield><subfield code="9">rswk-swf</subfield></datafield><datafield tag="689" ind1="0" ind2="0"><subfield code="a">Entwurfsmuster</subfield><subfield code="0">(DE-588)4546895-3</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="0" ind2="1"><subfield code="a">Java Standard Edition 8</subfield><subfield code="0">(DE-588)1049861094</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="0" ind2=" "><subfield code="8">1\p</subfield><subfield code="5">DE-604</subfield></datafield><datafield tag="689" ind1="1" ind2="0"><subfield code="a">Informationstechnik</subfield><subfield code="0">(DE-588)4026926-7</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="1" ind2="1"><subfield code="a">Entwurfsmuster</subfield><subfield code="0">(DE-588)4546895-3</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="1" ind2=" "><subfield code="8">2\p</subfield><subfield code="5">DE-604</subfield></datafield><datafield tag="700" ind1="1" ind2=" "><subfield code="a">Robson, Elisabeth</subfield><subfield code="e">Verfasser</subfield><subfield code="0">(DE-588)132058324</subfield><subfield code="4">aut</subfield></datafield><datafield tag="856" ind1="4" ind2="2"><subfield code="m">GBV Datenaustausch</subfield><subfield code="q">application/pdf</subfield><subfield code="u">http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=014607920&sequence=000001&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA</subfield><subfield code="3">Inhaltsverzeichnis</subfield></datafield><datafield tag="883" ind1="1" ind2=" "><subfield code="8">1\p</subfield><subfield code="a">cgwrk</subfield><subfield code="d">20201028</subfield><subfield code="q">DE-101</subfield><subfield code="u">https://d-nb.info/provenance/plan#cgwrk</subfield></datafield><datafield tag="883" ind1="1" ind2=" "><subfield code="8">2\p</subfield><subfield code="a">cgwrk</subfield><subfield code="d">20201028</subfield><subfield code="q">DE-101</subfield><subfield code="u">https://d-nb.info/provenance/plan#cgwrk</subfield></datafield><datafield tag="943" ind1="1" ind2=" "><subfield code="a">oai:aleph.bib-bvb.de:BVB01-014607920</subfield></datafield></record></collection> |
id | DE-604.BV021286998 |
illustrated | Illustrated |
index_date | 2024-07-02T13:48:44Z |
indexdate | 2024-11-12T09:01:18Z |
institution | BVB |
isbn | 3897214210 9783897214217 |
language | German |
oai_aleph_id | oai:aleph.bib-bvb.de:BVB01-014607920 |
oclc_num | 314816075 |
open_access_boolean | |
owner | DE-1051 DE-473 DE-BY-UBG DE-19 DE-BY-UBM DE-861 DE-824 DE-573 DE-858 DE-523 DE-526 DE-634 DE-83 DE-11 DE-2070s |
owner_facet | DE-1051 DE-473 DE-BY-UBG DE-19 DE-BY-UBM DE-861 DE-824 DE-573 DE-858 DE-523 DE-526 DE-634 DE-83 DE-11 DE-2070s |
physical | XXXIV, 638 S. Ill., graph. Darst. |
publishDate | 2006 |
publishDateSearch | 2006 |
publishDateSort | 2006 |
publisher | O'Reilly |
record_format | marc |
spelling | Freeman, Eric 1965- Verfasser (DE-588)132058332 aut Head first design patterns Entwurfsmuster von Kopf bis Fuß Eric Freeman ; Elisabeth Freeman 1. Aufl. Beijing [u.a.] O'Reilly 2006 XXXIV, 638 S. Ill., graph. Darst. txt rdacontent n rdamedia nc rdacarrier Informationstechnik (DE-588)4026926-7 gnd rswk-swf Entwurfsmuster (DE-588)4546895-3 gnd rswk-swf Java Standard Edition 8 (DE-588)1049861094 gnd rswk-swf Entwurfsmuster (DE-588)4546895-3 s Java Standard Edition 8 (DE-588)1049861094 s 1\p DE-604 Informationstechnik (DE-588)4026926-7 s 2\p DE-604 Robson, Elisabeth Verfasser (DE-588)132058324 aut GBV Datenaustausch application/pdf http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=014607920&sequence=000001&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA Inhaltsverzeichnis 1\p cgwrk 20201028 DE-101 https://d-nb.info/provenance/plan#cgwrk 2\p cgwrk 20201028 DE-101 https://d-nb.info/provenance/plan#cgwrk |
spellingShingle | Freeman, Eric 1965- Robson, Elisabeth Entwurfsmuster von Kopf bis Fuß Informationstechnik (DE-588)4026926-7 gnd Entwurfsmuster (DE-588)4546895-3 gnd Java Standard Edition 8 (DE-588)1049861094 gnd |
subject_GND | (DE-588)4026926-7 (DE-588)4546895-3 (DE-588)1049861094 |
title | Entwurfsmuster von Kopf bis Fuß |
title_alt | Head first design patterns |
title_auth | Entwurfsmuster von Kopf bis Fuß |
title_exact_search | Entwurfsmuster von Kopf bis Fuß |
title_exact_search_txtP | Entwurfsmuster von Kopf bis Fuß |
title_full | Entwurfsmuster von Kopf bis Fuß Eric Freeman ; Elisabeth Freeman |
title_fullStr | Entwurfsmuster von Kopf bis Fuß Eric Freeman ; Elisabeth Freeman |
title_full_unstemmed | Entwurfsmuster von Kopf bis Fuß Eric Freeman ; Elisabeth Freeman |
title_short | Entwurfsmuster von Kopf bis Fuß |
title_sort | entwurfsmuster von kopf bis fuß |
topic | Informationstechnik (DE-588)4026926-7 gnd Entwurfsmuster (DE-588)4546895-3 gnd Java Standard Edition 8 (DE-588)1049861094 gnd |
topic_facet | Informationstechnik Entwurfsmuster Java Standard Edition 8 |
url | http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=014607920&sequence=000001&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA |
work_keys_str_mv | AT freemaneric headfirstdesignpatterns AT robsonelisabeth headfirstdesignpatterns AT freemaneric entwurfsmustervonkopfbisfuß AT robsonelisabeth entwurfsmustervonkopfbisfuß |