Beste Antwort
Grundsätzlich ist Boilerplate-Code ein Rahmen für Ihr Projekt.
Nehmen wir an, Sie müssen schnell einen Prototyp erstellen Produkt für Kunden in bestimmten Technologien. Ohne Boilerplate müssten Sie bei Null anfangen oder eine von der CLI generierte Vorlage, die nicht immer Ihrem Arbeitsstil entspricht.
Stellen Sie sich nun vor, Sie haben ein sauberes kleines Projekt, das Sie für ein anderes gemacht haben Kunden vor einiger Zeit, die im Grunde nur einige Änderungen, das Entfernen einiger Zeilen, das Hinzufügen einiger anderer benötigen, und es ist im Grunde bereit, Ihrem Kunden zu präsentieren. Ordentlich, was?
Nun, ein Boilerplate zu haben, ist sozusagen das zweite Szenario. Wenn Sie wissen, dass es einige Projekte geben wird, die die Verwendung bestimmter Technologien / Frameworks / Bibliotheken erfordern, können Sie sich selbst eine Platte, eine Boilerplate reparieren. Es enthält Ihre bevorzugten Funktionen wie Form und Farbe (und auch Ihren Codestil!), Sodass Sie sich ganz einfach darauf konzentrieren können, Inhalte hinzuzufügen und nicht jedes Mal zu ändern, wenn Sie ein neues Projekt starten möchten.
Um ein Beispiel zu erläutern, nehmen wir an, dass Sie häufig aufgefordert werden, eine Anwendung in Angular2 + oder React zu erstellen, die eine Seitenleiste mit einer Vorschau einiger Daten und einen festen Header mit Menüsteuerelementen enthält. Anstatt jedes Mal, wenn ein neuer Kunde Sie erreicht, ein leeres Projekt zu erstellen, können Sie einfach ein leeres Boilerplate verwenden, um sich darauf zu konzentrieren, keine geeigneten Menüeinträge, Vorschauen und Hauptinhalte hinzuzufügen.
Um dies zusammenzufassen, wenn Sie es wissen Sie werden in Zukunft viele ähnliche Projekte haben, ein Boilerplate ist eine enorme Zeitersparnis 🙂
Antwort
Elazar hatte einige großartige Punkte (insbesondere das Vermeiden von geprüften Ausnahmen), aber ich „Ich werde meine eigenen Empfehlungen aufgrund der A2A hinzufügen 🙂
Sie brauchen Guava nicht unbedingt, um überprüfte Ausnahmen zu vermeiden. Sie können stattdessen einfach Laufzeitausnahmen auslösen. Nur wenn Sie Code benötigen, der diese aktivierten Ausnahmen bereits auslöst, ist dies das Problem. Wenn Sie möchten, können Sie diese explizit abfangen und stattdessen Laufzeitausnahmen auslösen.
Polymorphismus ist eine Möglichkeit, das Schreiben einer Methode für jeden abgeleiteten Typ derselben untergeordneten Klasse zu vermeiden.
Reflexion hilft Ihnen auch, Code wiederzuverwenden. Vielleicht möchten Sie in der Lage sein, eine Klasse in einem Verzeichnis abzulegen und sie als „neue Komponente“ zu erkennen, die Ihre Software verwenden kann. Sie können es über Reflektion erkennen und verwenden, anstatt es zusammen mit den anderen Komponenten über expliziten sich wiederholenden Code einbinden zu müssen.
Frameworks sind eine Möglichkeit, auch einige Boilerplates zu vermeiden. Manchmal fördern sie Boilerplate, aber manchmal tun sie Dinge für Sie. Sie können Spring-Annotationen ausprobieren, um zu vermeiden, dass Dinge explizit weitergegeben werden.
Warum scheint jede andere Java-bezogene Antwort, die ich schreibe, einen Link zu diesem Artikel
Auch aus dem Wikipedia-Artikel über Boilerplate-Code :
„Der Bedarf an Boilerplate kann durch übergeordnete Mechanismen wie Metaprogrammierung reduziert werden (der Computer schreibt automatisch den erforderlichen Text auf dem Boilerplate), Konvention über Konfiguration (das gute Standardwerte liefert und die Notwendigkeit verringert, Programmdetails in jedem Projekt anzugeben) und -getriebenes Engineering (das Modelle und Modell-zu-Code-Generatoren verwendet, sodass kein manueller Code für die Heizplatte erforderlich ist). „