記事「MVCデザインパターンとその可能なアプリケーション(第2部): 3つのコンポーネント間の相互作用の図」についてのディスカッション

 

新しい記事「MVCデザインパターンとその可能なアプリケーション(第2部): 3つのコンポーネント間の相互作用の図」はパブリッシュされました:

本稿は、前の記事で説明したMQLプログラムのMVCパターンのトピックの続きです。この記事では、パターンの3つのコンポーネント間の可能な相互作用の図を検討します。

メイン指標ファイルのOnChartEventハンドラで呼び出される結果のControllerメソッドは、次のようになります。

void CController::ChartEvent(const int id,const long &lparam,const double &dparam,const string &sparam) {

      switch (id) {
         case CHARTEVENT_OBJECT_CLICK:
            if (StringCompare(sparam, pBtn.GetName()) == 0) {
               if (pView.GetViewType() == LINE)
                  pView.SetNewViewType(HISTO);
               else pView.SetNewViewType(LINE);   
            }
            break;      
        default:
            break;    
      }//switch (id)
}


このメソッドは、マウスが正しいオブジェクトをクリックしたかどうかを確認してから、ビューの表示モードを切り替えました。

関連する変更を追加するのは非常に簡単で迅速でした。1年後に同様の変更を実行するとしても、それほど長くはかからないでしょう。開発者はスクリプトの構造と各コンポーネントで行なったことを覚えているため、ドキュメントを紛失したり、プロジェクトの原則を忘れたりした場合でも、プロジェクトの保守は簡単です。

作者: Andrei Novichkov