JavaRush /Java-Blog /Random-DE /Rezension des Buches „Head First Design Patterns“
Alex
Level 37

Rezension des Buches „Head First Design Patterns“

Veröffentlicht in der Gruppe Random-DE
Unter den Leuten, die zumindest ansatzweise mit der Head First-Reihe vertraut sind, gibt es viele, die diese Literatur für eine eher oberflächliche Lektüre für Anfänger halten. Was soll ich sagen, es ist unwahrscheinlich, dass es möglich sein wird, sich in 48 Stunden eingehend mit einem komplexen Thema im Bereich Programmierung zu befassen. Es lässt sich jedoch kaum behaupten, dass Design Patterns ein Buch ist, das für Anfänger ein nützlicher Leitfaden zum Programmieren sein wird. Dieses Buch gehört zu den zehn beliebtesten auf Stackoverflow, und das aus gutem Grund. Die einfache Darstellung, das grundlegende Thema und die hochwertigen Beispiele machen das Buch heute und meiner Meinung nach auch in den kommenden Jahren beliebt. Rezension des Buches „Head First Design Patterns“ - 1

Merkmale des Buches

Von Kopf bis Fuß erfahren wir, was Muster sind, wie man sie verwendet und wie man über sie denkt. Ein Muster ist eine Vorlage, eine universelle Lösung für eine bestimmte Reihe von Problemen. Entwurfsmuster wiederum sind häufig verwendete Architekturlösungen, mit denen benutzerfreundliche und flexible Anwendungen geschrieben werden können. Entwickler auf der ganzen Welt lösen die gleichen Probleme mit den gleichen Ansätzen. Wie es in der Anmerkung heißt: Wenn Sie das Rad nicht neu erfinden möchten, verwenden Sie vorgefertigte Designvorlagen (Muster), deren Arbeit dieses Buch gewidmet ist . Unabhängig davon ist die Präsentation des Materials hervorzuheben: Die Bücher der Head First-Reihe zeichnen sich durch ihre Einfachheit aus und werden in einem Zug gelesen. „Design Patterns“ ist keine Ausnahme. Darüber hinaus werden die folgenden Grundprinzipien befolgt:
  1. Sichtweite
  2. Konversationsstil der Präsentation
  3. Zahlreiche Abbildungen
  4. Aktive Leserbeteiligung
  5. Emotionen ansprechen
  6. Die Aufmerksamkeit des Lesers erregen
Die Autoren des Buches nutzen bei der Präsentation des Materials gekonnt die Theorie der Metakognition: Für mich vergingen die ersten 100 Seiten wie im Flug. Das Schöne an diesem Ansatz ist, dass sich das Gehirn tatsächlich an das Gelesene erinnert. Die Kombination mehrerer Erzählstile, interessante Fragestellungen, Redundanz und Kreativität – all das trägt dazu bei, dass der Leser das Interesse am Hauptthema nicht verliert. Bevor ich das Buch kaufte, zögerte ich, nachdem ich gemischte Rezensionen gelesen hatte. Nachdem ich jedoch schnell mehrere andere Quellen zu diesem Thema durchgesehen hatte, kam ich zu dem Schluss: Um in Muster einzutauchen, ist dieses Buch genau das Richtige für Sie.

Hauptthema und Leitgedanke

„Bestimmt hat schon jemand Ihr Problem gelöst“ – so beginnt das erste Kapitel des Buches und vermittelt die ganze Bedeutung von Designmustern in der Programmierung. Das Hauptziel besteht darin, dem Leser ihre Bedeutung richtig zu vermitteln, denn zunächst muss der Programmierer wissen, wozu die Muster dienen und an welcher Stelle sie angewendet werden müssen. Im Wesentlichen müssen Sie die Vorlagen zunächst im Kopf in kleine Stücke sortieren und diese erst dann in Programme umsetzen. Wenn ein Programmieranfänger ein gutes Verständnis für Muster hat, kann deren Verwendung den Code erheblich komplizieren (sollte ihn aber vereinfachen!). Auf die Frage „Warum sollten Designmuster verwendet werden?“ Das Buch gibt eine klare Antwort: „Die Kenntnis von Konzepten wie Abstraktion, Vererbung und Polymorphismus macht Sie nicht zu einem guten OO-Designer.“ Die Muster enthalten bewährte OO-Designerfahrung.“

"Zusammenfassung"

Das Buch ist in 14 Kapitel plus einer Einleitung unterteilt. Zu Beginn versuchen die Autoren des Buches, den Leser vorzubereiten und sein Gehirn darauf einzustimmen, Informationen über das Musterdesign richtig wahrzunehmen. Das erste Kapitel erklärt das Grundprinzip von Mustern und welche Zwecke sie erfüllen. Eines der am häufigsten verwendeten Muster – Strategie – lässt sich leicht und unauffällig untersuchen. Die Kapitel zwei bis elf widmen sich einer detaillierten Analyse einzelner Muster :
  1. Beobachter. Verteilt Ereignisse auf Objekte, die an ihrem Auftreten interessiert sind.
  2. Dekorateur. Ein weiterer Blick auf die Vererbung in Java und die Bereitstellung neuer Funktionen für Java-Klassen, ohne den Code zu ändern.
  3. Fabrik. Das Muster schützt den Code vor unerwünschten Abhängigkeiten.
  4. Einzel. Auch als Singleton bekannt, ermöglicht es Ihnen, ein einzelnes Klassenobjekt für das gesamte Programm zu erstellen.
  5. Team. Mit dem Muster können Sie einen Methodenaufruf bequem kapseln und so seine Fähigkeiten erweitern.
  6. Adapter und Fassade. Lösung des Problems der Schnittstelleninkompatibilität sowie Verpackung von Objekten, um ihre Schnittstelle zu vereinfachen.
  7. Vorlagenmethode. Kapselung algorithmischer Blöcke, die es Unterklassen ermöglicht, sich jederzeit dem gewünschten Verarbeitungsalgorithmus zuzuordnen.
  8. Iterator und Linker. Das Muster bietet ein praktisches Werkzeug zum Durchlaufen von Sammlungen, unabhängig von deren Typ. Darüber hinaus enthält das Kapitel einige Informationen zu Supersammlungen.
  9. Zustand. Objekte sind mit der Fähigkeit ausgestattet, ihr Verhalten durch Veränderungen ihres inneren Zustands zu steuern.
  10. Stellvertreter. Ein sehr praktisches Muster zur Steuerung des Zugriffs auf ein Objekt.
Kapitel 12 untersucht zusammengesetzte Muster bzw. Kombinationen einiger der besprochenen Muster, die zum Aufbau leistungsstarker Softwarearchitekturen verwendet werden können. Kapitel 13 ist der Verwendung von Mustern bei realen Problemen gewidmet, die Klassifizierung von Mustern, ihre Varianten und Richtlinien für die Verwendung werden vorgestellt. Das Buch dient als Anhang zu Kapitel 14, das ein breiteres Spektrum an Mustern abdeckt. Jeder von ihnen ist auf seine Weise nützlich, daher ist es mehr als wünschenswert, sie zu kennen. Natürlich sind sie nicht so beliebt wie die Muster aus den Kapiteln 2–11, aber das macht sie nicht weniger nützlich. Das Buch erhebt nicht den Anspruch, eine wissenschaftlich korrekte Darstellung der Mustertheorie zu sein. Aber wenn die Head First-Bücher so akribisch sind, haben angehende Entwickler keine Chance, herauszufinden, was was ist, und die Grundlagen selbst zu klären. Dies ist eine einfache und bequeme Möglichkeit, für diejenigen, die mit ihnen nicht vertraut sind, zu lernen, was Designmuster sind. Laut den Autoren ist „Design Patterns“ ein Buch, das für diejenigen geeignet ist, die bereits mit Java (oder C#) vertraut sind, die Prinzipien des objektorientierten Designs erlernen möchten und lebhafte Gespräche lieber langweiligen Vorlesungen vorziehen. Dieses Buch ist kein Nachschlagewerk! Wenn Sie ein professioneller Entwickler mit Erfahrung sind und zumindest mit einem Teil dieser Muster arbeiten, ist das Buch für Sie wahrscheinlich nicht von Interesse. Ein wichtiger Bestandteil des Buches sind die Übungen, die man nicht auslassen sollte. Wenn Sie das Buch sorgfältig lesen und in extremen Fällen eine minimale Suche im Internet durchführen, wird Ihnen die Lösung keine Kopfschmerzen bereiten. Aber es wird auf jeden Fall Vorteile geben. Zumindest werden Sie die im Buch dargelegte Theorie besser verstehen.

Vorteile und Nachteile

Ich habe, wie viele von denen, die bei JavaRush studieren, eine kühle Haltung gegenüber langweiligen Vorlesungen, vollgestopftem Material und anderer Gewalt gegen die Psyche eines wissensdurstigen Studenten. Die Energie, die für das Auswendiglernen unverständlicher Texte aufgewendet wird, sollte meiner Meinung nach am besten in die Suche nach alternativen Lernquellen investiert werden. Dieses Buch ist Ihre Zeit und Mühe wert. Ein ausgezeichneter Präsentationsstil, eine kompetente Steuerung der Aufmerksamkeit des Lesers und die Wiederholung wichtiger Punkte bilden den Hauptvorteil dieses Buches – die einfache Aufnahme des Materials . Ein weiteres Plus ist die große Anzahl an Abbildungen. Meiner Meinung nach hat jedes Bild im Buch seinen Platz: Sie alle ermöglichen es, die Worte der Autoren zu untermauern und ein tieferes Verständnis für das Wesentliche des Materials zu erlangen. Wie ich oben geschrieben habe, handelt es sich bei diesem Buch nicht um ein Nachschlagewerk: Die Autoren beabsichtigen nicht, alle Muster aufzulisten. Seine Hauptaufgabe besteht darin, Verständnis zu vermitteln und über die Grundmuster zu sprechen, damit andere, komplexere Muster leichter verständlich werden. Und das meistert sie zu 100 %. Zu den Nachteilen gehört, dass Head-First-Entwurfsmuster auf Russisch nicht so einfach zu lesen sind wie auf Englisch. Natürlich sollte jeder Entwickler Englisch sprechen, aber Programmieranfänger entwickeln diese Fähigkeit nicht immer so weit, dass sie Bücher im Original lesen können. Dies kann jedoch als erzwungenes Minus gewertet werden, da der Stoff recht genau dargestellt wird und die Bedeutung erhalten bleibt.

Zusätzliche Bücher zu Designmustern

Ich bin ein Verfechter der Überzeugung, dass es besser ist, grundlegende Themen aus mehreren Quellen zu studieren und darin nach einem geeigneten Präsentationsstil zu suchen. Wenn Sie in Muster eintauchen und zusätzliche Theorie lesen möchten, glauben Sie mir, Sie werden etwas haben, mit dem Sie Ihre Abende beschäftigen können.
  1. Objektorientierte Designtechniken. Designmuster (Gamma E., Helm R., Johnson R., Vlissides J.).

    Rezension des Buches „Design Patterns“ (Head First Design Patterns) - 2

    Dies ist eine seriösere Veröffentlichung, ein Nachschlagewerk für Muster, ein sehr angesehenes Buch der „Gang of Four“. Viele nennen es die Bibel des OO-Designs.

    Im Internet sind die Meinungen der Entwickler in drei Lager gespalten:

    • Einige argumentieren, dass das Buch veraltet sei und der Präsentationsstil es unmöglich mache, es zu lesen
    • andere empfehlen, das Buch lediglich als Nachschlagewerk für Muster zu verwenden, mehr nicht
    • Wieder andere sagen, dass das Buch der heilige Gral der Designmuster ist und von jedem gelesen werden sollte, der eines Tages Senior Java Developer werden möchte
    Ich gehöre zur zweiten Gruppe: Ich denke, dass das Buch wirklich wertvoll ist, aber es für die Entwicklung und nicht für die Suche nach Informationen zu lesen, ist sehr schwierig.

    Wichtig:Die Beispiele im Buch sind in C++ geschrieben.

  2. Java EE. Designmuster für Profis (Murat Yener, Alex Fidom).

    Rezension des Buches „Design Patterns“ (Head First Design Patterns) - 3

    Dieses Buch widmet sich dem Design von Unternehmensanwendungen: Es behandelt viele Beispiele realer Anwendungsprobleme.

  3. Entwurfsmuster in Java (Grand M.).

    Rezension des Buches „Design Patterns“ (Head First Design Patterns) - 4

    Das Buch zeigt anschaulich, wie die Verwendung von Mustern Entwicklern Zeit spart, bietet einen Überblick über die UML-Sprache und beschreibt 47 Entwurfsmuster.

Entwurfsmuster in JavaRush

Im JavaRush-Kurs werden Entwurfsmuster auf Stufe 7 der Java Collections-Quest erlernt. Die Vorlesungen 1 und 2 widmen sich den gängigsten Mustern und in Vorlesung 4 können Sie Probleme zu diesem Thema lösen. Nachfolgend finden Sie einige interessante Artikel zur „Sich stärken“:
  1. Ein allgemeiner Artikel zum Thema Muster mit Kategorien, Beispielen, allem, was uns gefällt.

  2. Zwei Artikel zu Mustern: Teil 1 Übersicht und ausführlicher Teil 2 .

  3. Entwerfen Sie Muster am Beispiel des Singleton- Musters .

  4. Artikel über die Muster „ Strategie “ und „ Adapter “.

  5. Das Konzept der Entwurfsmuster hängt mit UML-Diagrammen zusammen. Dieser Artikel hilft Ihnen zu verstehen, was sie sind.

Kommentare
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION