制御の反転とは何ですか?
制御の反転(IOC)は、一般的なコード構造を使用して、多くの一意で特定のサブルーチンを管理するプログラミング手法です。これにより、特定のコードが逆さまに再利用可能で一般的なサブルーチンの多くを管理する従来のプログラミング方法になります。制御の反転は通常、プログラマーが特定のコードを複数回再利用する必要がないことを知っている状況で使用され、プログラムのサブルーチンをプログラム全体に大幅に変更せずに内外に切り替えることができる柔軟な設計を可能にします。
従来のプログラミングでは、コードの本体は、個々の機能を実行する一般的なサブルーチンを繰り返し呼びます。たとえば、会計を扱うプログラムでは、エンドユーザーが特定の注文番号を検索できるように設計されたサブルーチンは、おそらくプログラムのさまざまなセクションで複数回呼び出され、ユーザーが実行できるようにします。プログラムのさまざまな領域からの非常に一般的な検索アルゴリズム。コードを再利用するとプログラミングプロセスが簡素化されますが、プログラマーがコードが使用される他のセクションに影響を与えることなく、プログラムの1つのセクションの検索アルゴリズムを調整したい場合、複雑さを作成します。
制御シナリオの反転下で同じ例を使用して、単一の検索サブルーチンは、プログラムの多くの領域で複数回呼び出されません。代わりに、プログラムの各セクションには、独自の完全に自己完結型の検索サブルーチンが含まれます。これにより、最初にプログラムをコーディングするのに必要な時間が増えますが、設計プロセスの個々のサブルーチンに後で行う必要がある特定の調整を簡素化します。 1つの特定の領域で1つのサブルーチンを変更すると、プログラムの残りの部分が完全に影響を受けません。
アドバンタグIOCのES
このテクニックの主な利点の1つは、大規模なチームで作業するときにプログラム設計をはるかに簡単にすることです。チームメンバー間のコミュニケーションは、労働者の数が増加するにつれてますます困難になるため、コントロールの反転により、各チームは独自のルーチンをプログラムし、互いに独立して機能することができます。また、各チームのサブルーチンの長引くエラーはプログラムの特定のセクションにのみ影響するため、システム内のバグの影響を簡素化します。このため、システムの一部で問題が発見された場合、プログラムの残りの部分は完全に機能する必要があります。
IOC
の短所制御の反転はプログラムの設計を簡素化できますが、オブジェクトを設計する方法の事前知識が必要です。各ルーチンは個別にプログラムできますが、IOC作成者は、変更を行う必要がある場合に各アイテムをプログラムする方法を知っている必要があります。IOCを採用するプログラマー。また、各ルーチンは独立して機能するため、それらはすべて外の世界に見えるようになり、一部の企業によって眉をひそめられる可能性があります。