めるくん回答ポイント 100ptウォッチ

呼び出し元のクラスの変数にアクセスするクラス?

Scalaであるプログラムを作成しています。あるアルゴリズムを利用したネットワーク処理を行なうプログラムです。
内部状態や変数を持つクラスAが存在しており、(定期的に外部からの命令で)ある条件でその変数などが変更されるのですが、可読性の向上と処理の簡単のため、処理を独立させるべくStrategy Patternを適用しようと思います。
クラスAのある処理判断を別のクラスBにさせるという意味です。
しかしながらStrategyクラスから処理元のクラス変数にアクセスするにはクラスのインスタンスを引数として渡すか、Singletonとして呼び出すしか方法がないように思われます。

具体的に申しますと、外部のノードの死活などを判定し、とるべき行動(そのノードを切る、等)を判断させるのですが、その「とるべき行動」がすなわち「クラス変数への作用」です。
したがって外部のクラスに独立させるとクラス変数へのアクセスが煩雑なものになる状況です。

スマートな解決法はないのでしょうか。元クラスに全ての判断と処理を書くべきなのでしょうか。

よろしくお願いいたします。

※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。
ログインして回答する

みんなの回答

この質問へのコメント

コメントはありません

この質問への反応(ブックマークコメント)

質問の情報

登録日時
2013-07-11 22:57:28
終了日時
2013-07-18 23:00:06
回答条件
1人5回まで

この質問のカテゴリ

この質問に含まれるキーワード

インスタンス183アルゴリズム292SCALA23引数408変数1063Singleton6ノード95ネットワーク2272プログラム5048適用908

人気の質問

メニュー

PC版