1

私はFlex/Air用のかなり大きなアプリケーションに取り組んでいます。GraniteDSとTideを使用して、 JavaEEサーバーからモデルを操作しています。

Flexのモジュール化とモジュールについて読んでいます。アプリケーションはすでに構築されており、いくつかのクラスとパーツを再設計する方法を考えています。これまで読んだことから、モジュールは動的にロードできる別のswfであることがわかります。ほとんどのチュートリアル/ドキュメントは、実際の開発者ではなくFlexまたはAirを使用しているFlash「プログラマー」を対象としているため、オンラインリソースを入手するのが難しくなっています。

私が理解できないのは、まだ、このモジュールでActionScriptクラスまたはMXMLビューをカプセル化する方法です。

コードの一部をライブラリに分割しました。たとえば、Graniteから生成されたコードは「サーバー」ライブラリにあります。ただし、ロジックの一部をモデレーター、コントローラー、ビューで分離したいと思います。モジュールは進むべき道ですか?私のアーキテクチャを構築するためのより良い視点を得るために、チュートリアルのような「ダミーのためのモジュール」または「プログラマーのための最初のフレックスモジュール」はありますか?いつライブラリを選択し、いつモジュールを選択するのですか?

私はFlex3.5を使用していますが、Flex 4への移行はかなり先のことなので、Flex4の回答はありません。ありがとうございます。

4

1 に答える 1

1

モジュールは、相互に依存しないさまざまなセクションにUIをカプセル化するための答えです。それらをアプリケーション内のアプリケーションのように考えてください。

非UIアクションスクリプトを意味する「コード」をカプセル化したい場合は、実際にはクラスとクラスのパッケージが必要です。そのコードをswcにパッケージ化することもできます。これは、複数のプロジェクトに含めることができるそのコードのコンパイル済みバージョンです(これは、ライブラリが意味するものだと思います)。

UI以外のコードを含めるためだけにモジュールを作成することは望ましくありません。アプリケーションでモデル/ビュー/コントローラーを分離するためにモジュールを使用することは望ましくありません。

アプリケーションの一部がある場合、そのほとんどは完全に単独で実行され、渡される情報の一部を除いて、アプリケーションの残りの部分に実際に依存することはありません。モジュールにとっては意味があります。

モジュールを主に使用するのは、一度に1つのセクションでのみ作業する、異なるセクションを持つアプリケーション用です。他のセクションがリソースを占有する必要はないため、モジュールにはさまざまなセクションがあり、必要に応じてそれらをロード/アンロードします。

それは役に立ちますか?

以下のコメントへの返信として編集してください。

ライブラリとは、クラスをカプセル化してswcを使用するFlexライブラリプロジェクトを意味します。これらのライブラリをFlexプロジェクト内に含めることはできますか?(新しいライブラリごとに個別のライブラリプロジェクトを使用します)。

はい、これらのswc(コードのライブラリ)をflexプロジェクト内で使用できます。swcをflex/flash Builderプロジェクトのlibディレクトリにドロップするだけで、コードがクラスパスに自動的に追加されます。単一のswc内のコードに必要なものがすべてそのswc内にあることを確認してください。swcが機能するために別のswcに依存するようにしないでください。

于 2010-05-24T18:21:41.457 に答える