委譲の隠蔽 Hide Delegate
前提
プログラムを書いていると、
プログラム同士が、複雑なネットワークを形作る。
この関係が、複雑になりすぎるとプログラムの修正が困難になってくる。
これを防ぐために用いるのが委譲の隠蔽。
目的
委譲クラスを使用するべきクラスからしか、アクセス出来ないようにする。
行うこと
クラスに委譲メソッドを追加して、使用しなくても良いクラスから隠蔽を行う。
結果
クラス間の無駄な関連が減り、コードの修正がしやすくなる
ただし、委譲メソッドを作成したクラスの責任が増える
手順
委譲メソッドの作成
1.委譲クラスのメソッドに対応するメソッドを作成する。
2.いままで委譲クラスを読んでいたクラスは、メソッドを呼ぶように変更をする。
3.コンパイルしてテストをする。
委譲クラスの隠蔽
委譲クラスのgetterメソッドを削除する。
コンパイルしてテストをする。
サンプルコード
-変更
class.getter().method();
- 変更あと
class.method();
その他の隠蔽
アクセス制御を使った隠蔽
private をつけてフィールドやメソッドを宣言する。
他のクラスから見えないようになるので、修正の際にクラス内のみに気を使えば良い
パッケージを使った隠蔽
クラス宣言の際に、publicをつけずに宣言をする。
そうすると他のパッケージから見えなくなる
ネストしたクラスを使った隠蔽
ネストしたクラスは、そのネスト元のクラスの中でのみ使うクラスになる。
Author And Source
この問題について(委譲の隠蔽 Hide Delegate), 我々は、より多くの情報をここで見つけました https://qiita.com/decoch/items/2f0294b71eb8277fe040著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .