Module分割項目の合理的な使用とModuleの使用

4781 ワード

回転:http://bbs.airia.cn/thread-2811-1-1.html
このmoduleが使っているエッセイはよく書けています.
 
今、Moduleについてお話ししますが、このチュートリアルコードは最も重要ではありません.どのようにModuleを合理的に使用するか、注意する問題が重要なので、次の赤い文に注意することをお勧めします.Moduleは、私たちのプロジェクトを必要に応じてN個のモジュールに分け、コンパイル時にプロジェクトをメインファイルとN個のmoduleのswfにコンパイルすることができます.Moduleは基本的に2つに分けられます.
  • 完全なModuleは、外部appで使用できます.関連するすべての参照をModuleにコンパイルし、プライマリ・ファイルのボリュームを縮小しますが、Module自体のボリュームが大きくなる可能性があります.たとえば、Moduleとプライマリ・プログラムにオブジェクトCが適用され、そのオブジェクトCがプライマリ・プログラムおよびModuleにコンパイルされ、Moduleのボリュームが大きくなります. 
  • メインプログラムのModuleに関連付けられます.たとえば、ModuleとメインプログラムにオブジェクトCが適用されると、オブジェクトCはメインプログラムにのみコンパイルされ、Moduleのボリュームが減少します.私は今日主にこのModuleを話して、私たちが最もよく使うものです.

  • Moduleの種類を知ってから、Moduleを使うときの注意点を簡単に話しましょう.
  • Module以外の場所では、Moduleのオブジェクトを直接参照することはできません.これによりModuleは参照モジュールにコンパイルされ、メインプログラムから参照すると実際には効果がありません.
  • 参照できない以上、Moduleオブジェクトの使用はインタフェースで実現することを推奨する.Moduleでインタフェースメソッドを実装し、外部でこのインタフェースを使用してもModuleが誤コンパイルされることはありません.
  • Moduleはメインプログラムのものを参照できますが、他のModuleのものは参照しないでください.

  • Moduleは何ができますか?私は主にModuleを次の2つの状況に使用します.
  • メインプログラムの体積を縮小し、Module機能ブロックをクリックするとModule.
  • をロードする.
  • メインプログラムに再入力後、ユーザが感じないまま残りのModule.
  • をプリロードする.
    今本題を話して、demoの中で私はこのようにModuleの使用を表現します.(Moduleの意味を表すために、メインプログラムが生成するサイズは元のflexサイズ248 K、Moduleに埋め込まれた2枚の画像は674 K)
  • Module.
  • の作成方法
  • メインプログラムでボタンをクリックしてModule PictureWindow.
  • をロードする.
  • ロードが完了したら、モジュールをBoxに追加し、PictureWindowのメソッドsetSelectIndex()をインタフェースで呼び出して表示されるピクチャを設定します.

  • 1.Moduleの作成方法
    新規-->MXML Module-->Optimize forアプリケーション-->OKまたは、Canvas、panelなどの作成済みの任意のContainer構築ラベルをModuleに変更したり、ModuleのAs classを継承したりすることができます.
    その後、右クリック項目-->Property-->Flex Module の中にこのModuleがありますが、なければAdd-->Moduleのmxmlまたはasファイルを選択-->Optimize for applicaiton-->OK
    2.メインプログラムでボタンをクリックしてモジュールPictureWindowをロードする.
    ここでは、ModuleManagerを使用して、必要なModuleを動的にロードします.これはModuleLoderよりずっと柔軟です.
    
       
       
       
       
    private function loadModule(): void {
    m
    = ModuleManager.getModule( " PictureWindow.swf " ); // Module , swf bin
    //
    m.addEventListener(ModuleEvent.READY,loadReady);
    m.addEventListener(ModuleEvent.PROGRESS,
    loading );
    m.addEventListener(ModuleEvent.ERROR,loadError);
    m.load();
    // Module
    }
    3.ロードが完了したら、モジュールをBoxに追加し、PictureWindowのメソッドsetSelectIndex()をインタフェースで呼び出して表示されるピクチャを設定します.
    PictureWindowはPictureWindowInterfaceインタフェースを実現し,setSelectIndex法を暴露した.Moduleオブジェクトを直接使用しないでください.var window:PictureWindow=e.module.factory.create()as PictureWindowと書くことに注意しないと、Module全体が無駄になります.
     
    
       
       
       
       
      // Module
    private function loadReady(e:ModuleEvent): void {
    // Module PictureWindowInterface
    var window:PictureWindowInterface = e.module.factory.create() as PictureWindowInterface
    this .box.addChild(window as DisplayObject);
    window.setSelectIndex(
    1 ); // Interface Module
    }
    では、Moduleの使用はこれだけです.ここを見て、自分のModuleを作成することもできます.ModuleManagerとIModuleInfoの詳細については、Flexヘルプを参照してください.
     
    コードのダウンロードは原文を参照してください.