Was ist Inversion der Kontrolle?

Inversion of Control (IOC) ist eine Programmierungstechnik, bei der eine allgemeine Codestruktur verwendet wird, um eine Reihe eindeutiger und spezifischer Unterroutinen zu regieren. Dies macht herkömmliche Programmiermethoden, bei denen bestimmter Code eine Reihe wiederverwendbarer und allgemeiner Unterprogramme regelt. Die Kontrollinversion wird normalerweise in Situationen verwendet, in denen der Programmierer weiß, dass er oder sie ein bestimmtes Code -Stück nicht mehrmals wiederverwenden muss, was ein flexibles Design ermöglicht, bei dem die Unterprogramme eines Programms ohne wesentliche Änderungen des Gesamtprogramms ein- und ausgeschaltet werden können.

In der traditionellen Programmierung fordert der Hauptteil des Codes wiederholt allgemeine Unterprogramme, die individuelle Funktionen ausführen. Beispielsweise wird in einem Programm, das sich mit der Buchhaltung befasstDieser sehr allgemeine Suchalgorithmus aus verschiedenen Bereichen des Programms. Die Wiederverwendung des Codes vereinfacht den Programmierungsprozess, erstellt jedoch Komplexität, wenn der Programmierer den Suchalgorithmus für einen Abschnitt des Programms optimieren möchte, ohne die anderen Abschnitte zu beeinflussen, in denen der Code verwendet wird.

Verwenden des gleichen Beispiels unter einer Umkehrung des Kontrollszenarios würde die einzelne Such -Unterprogramme in mehreren Bereichen des Programms nicht mehrmals aufgerufen. Stattdessen würde jeder Abschnitt des Programms seinen eigenen völlig in sich geschlossenen Such-Unterroutine enthalten. Dies erhöht die Zeit, die für das zunächst anfängliche Programm erforderlich ist, vereinfacht jedoch alle spezifischen Verbesserungen, die möglicherweise später an einzelne Unterprogramme im Entwurfsprozess vorgenommen werden müssen. Durch das Ändern eines Unterprogramms in einem bestimmten Bereich wird der Rest des Programms völlig unberührt.

Vorteiles von ioc

Ein großer Vorteil für diese Technik besteht darin, dass das Programmdesign bei der Arbeit in groß angelegten Teams viel einfacher wird. Da die Kommunikation zwischen den Teammitgliedern mit zunehmender Anzahl von Arbeitnehmern notwendigerweise schwieriger und schwieriger wird, ermöglicht es jedem Team, seine eigenen individuellen Routinen zu programmieren, sodass sie unabhängig voneinander funktionieren können. Es vereinfacht auch die Auswirkungen von Fehler im System, da alle anhaltenden Fehler in den Unterprogrammen jedes Teams nur ihre spezifischen Abschnitte des Programms beeinflussen. Aus diesem Grund sollte der Rest des Programms, wenn Probleme in einem Teil des Systems entdeckt werden, voll funktionsfähig.

Nachteile von ioc

Während die Umkehrung der Kontrolle das Programmdesign vereinfachen kann, erfordert sie Vorkenntnisse darüber, wie Objekte gestaltet werden. Während jede Routine einzeln programmiert werden kann, muss ein IOC -Schöpfer wissen, wie er jeden Artikel programmiert, falls Änderungen vorgenommen werden müssenNG -Programmierer, um IOC zu beschäftigen. Da jede Routine unabhängig voneinander funktioniert, werden sie alle für die Außenwelt sichtbar, was von einigen Unternehmen verpönt werden kann.

ANDERE SPRACHEN

War dieser Artikel hilfreich? Danke für die Rückmeldung Danke für die Rückmeldung

Wie können wir helfen? Wie können wir helfen?