Dieser Artikel ist ein Spiegelartikel der maschinellen Übersetzung, bitte klicken Sie hier, um zum Originalartikel zu springen.

Ansehen: 17236|Antwort: 0

[Kommunikation] Abhängigkeitsinjektion – welche Vorteile hat sie?

[Link kopieren]
Veröffentlicht am 10.02.2019 18:14:29 | | |
Erstens kann die Erstellung verwandter Objekte von Klassen tatsächlich durch neue erfolgen. Wenn das Projekt jedoch zu groß ist und das Objekt zu viele Abhängigkeiten hat, müssen wir beim Erstellen des Objekts viel neuen Code schreiben, und es kann eine Methode geben, das Objekt direkt aufzurufen, nachdem man vergessen hat, einige abhängige Objekte zu instanziieren, und dann gibt es eine Nullpointer-Ausnahme. Wenn dieser Prozess der Containerverwaltung überlassen wird, müssen wir uns keine Sorgen um Objektinstanziierung machen, und es gibt keine Nullpointer-Ausnahmen bei der Verwendung abhängiger Objekte zu irgendeinem Zeitpunkt, und der Code kann vereinfacht werden.
Zweitens können die im Methodenaufruf verwendeten Attribute Instanzattribute sein; wenn sie alle statisch definiert sind, wie sieht es dann mit den in der Methode verwendeten Daten aus? Wenn man alle Methoden als statisch definiert, müssen auch die Eigenschaften der in der Methode referenzierten Klasse als statisch definiert sein, was den globalen Attributen entspricht, sodass es definitiv Probleme mit der Datensynchronisation geben wird.
Tatsächlich ist es sinnvoll, über die Programmierprinzipien im Designmuster nachzudenken, die alle darauf abzielen, hochlesbaren, leicht zu wartenden und skalierbaren Code zu erstellen. Beste Wünsche!

Es ist praktisch, Software in Form von Bausteinen zusammenzustellen, und es ist praktisch, Software mit hoher Kohäsion und niedriger Kopplung zu erstellen (indem Abhängigkeiten aus dem Code extrahiert werden)
Kollaborative Entwicklung, Code-Debugging (keine Notwendigkeit, Komponenten zusammenzuintegrieren, sie können separat getestet werden), und der erstellte Code ist robuster.

Die Projektentwicklung legt großen Wert auf hohe Kohäsion und niedrige Kopplung, und die Verwendung von Dependency Injection kann die Nutzung des neuen Schlüsselwortbereichs zur Erstellung von Objekten vermeiden, wodurch die Kopplung zwischen Klassen verringert wird






Vorhergehend:c# Marshal.PtrToStructure
Nächster:Verschlüsselung, Entschlüsselung und Assemblersprache
Verzichtserklärung:
Alle von Code Farmer Network veröffentlichten Software, Programmiermaterialien oder Artikel dienen ausschließlich Lern- und Forschungszwecken; Die oben genannten Inhalte dürfen nicht für kommerzielle oder illegale Zwecke verwendet werden, andernfalls tragen die Nutzer alle Konsequenzen. Die Informationen auf dieser Seite stammen aus dem Internet, und Urheberrechtsstreitigkeiten haben nichts mit dieser Seite zu tun. Sie müssen die oben genannten Inhalte innerhalb von 24 Stunden nach dem Download vollständig von Ihrem Computer löschen. Wenn Ihnen das Programm gefällt, unterstützen Sie bitte echte Software, kaufen Sie die Registrierung und erhalten Sie bessere echte Dienstleistungen. Falls es eine Verletzung gibt, kontaktieren Sie uns bitte per E-Mail.

Mail To:help@itsvse.com