web-dev-qa-db-ja.com

FlashとFlex

FlexとFlashを使用する場合の利点と欠点の簡潔なリストをどこでも探してみました。

プログラミングの背景から来た私は、Flexが大好きです。入手は簡単で、Flashクラスを使用できるので、フレックスなしでFlashを使用したいのはなぜですか?

フレックス:

長所:

  • rIA開発に最適
  • 箱から出して多くのユーザー入力オプションを提供します
  • レイアウトシステムの構築
  • mXMLは非プログラマーにとって簡単です
  • コンポーネントをすばやく組み合わせて小さなアプリケーションを作成できます
  • コンポーネントは、モジュール化されているため、大規模なプロジェクトでメリットがあります。
  • linuxを使用して開発できます
  • 検証などのためのNiceコンポーネントのライフサイクルがあります.

短所:

  • .swfのサイズを大きくする
  • コンポーネントの外観をカスタマイズすると、探している視覚スタイルによっては、予想よりもかなり時間がかかる場合があります
  • 存在しないカスタムコンポーネントが必要であることがわかった場合は、Flashに戻って、コンポーネントの実際のプログラミング作業とパッケージ化を行う必要があるかもしれません。
  • Flexの「柔軟性」は、多くのドキュメントを読むことを意味します
  • Flexフレームワークのバグ
  • 最終的には、Flexフレームワークのアーキテクチャを妥協する必要があります

フラッシュ

長所:

  • 映画/アニメーションの作成に最適
  • タイムラインは、設計者/アニメータが概念化するのが簡単になります
  • ゼロから作業する場合、多くの制御を提供します。
  • プログラミングの背景を持つ人にとっては簡単です
  • 好きなようにプログラムできます。既存のフレームワークとの妥協なし

短所:

  • 基本的なユーザー入力(テキストボックス)のみを提供します。
  • タイムラインはプログラマにとって気が遠くなるかもしれません(ただし、無視しても問題ありません)。
  • 特定のタイプのアプリケーションの開発は、Flexの場合よりも遅くなります
  • linuxを使用して開発できない
  • ユーザー入力の検証はすべてコードで処理する必要があります。組み込みの検証はありません。
  • 独自のレイアウトシステムを実装する必要がある

これまでに言ったことをすべて逃した場合は、修正してください。

40
Zack Marrapese

FlashとFlexはどちらも、フロントエンドが異なるだけで、同じ基盤となるレンダリングエンジンを使用します。 Flashは、映画やアニメーションの作成に適しています。 Flexはアプリケーション開発に適しています。

17
EvanK

プログラマーの観点から見ると、FlashとFlexの大きな違いは、プログラミングに使用するIDE /アプリケーションではなく、ActionScript(AS)のみでプログラミングするか、FlexフレームワークとMXMLを使用してアプリケーションをプログラミングするかです。

私は純粋なActionScriptがプログラミングに優れていると思います(Flash IDEまたはFlex IDEはそれほど関係ありません)を使用します)。MXMLは非プログラマ向けですASでプログラムされたコンポーネントを組み合わせる。

私はあなたのリストにこれらの長所/短所を追加します:

フレックス:

長所:

  • 非プログラマーがアプリケーション開発に入るのがより簡単に
  • コンポーネントをすばやく組み合わせて小さなアプリケーションを作成できます
  • コンポーネントは大規模プロジェクトで利点を提供できます

短所:

  • コンポーネントの外観をカスタマイズすると、探している視覚スタイルによってはlotが予想よりも長くかかる場合があります
  • 存在しないカスタムコンポーネントが必要であることがわかった場合は、Flashに戻って、コンポーネントの実際のプログラミング作業とパッケージ化を行う必要があるかもしれません。
  • Flexの「柔軟性」とは、lotのドキュメントを読むことを意味します
  • Flexフレームワークのバグ
  • 最終的には、Flexフレームワークのアーキテクチャを妥協する必要があります

Flash(またはFlex IDE):

長所:

  • プログラミングの背景を持つ人にとってはより簡単です;)
  • 好きなようにプログラムできます。既存のフレームワークとの妥協なし

短所:

  • タイムラインはプログラマーにとって気が遠くなることがあります(ただし、無視しても問題ありません)。
  • 特定のタイプのアプリケーションの開発は、Flexの場合よりも遅くなります

つまり、適切なタスクに適したツールを選択してください。

9
Niko Nyman

Flexは、ActionScript3で記述されたコードのライブラリーであるため、Flashに多くの機能と標準ライブラリーのようなものを追加します。欠点は、アプリケーションに含まれる膨大な量のコードであることです。アプリでFlexを使用すると、SWFのダウンロードサイズが数百K増加します。

アプリケーションに何らかの種類のユーザーインターフェイスウィジェットがある場合、Flash自体はテキストボックスなどの最も基本的なものしか持っていないため、ほとんどFlexを使用する必要があります。 Flexには、レイアウト、データバインディング、XMLセットアップなどを備えた完全なXML GUIがあります。

それをフラッシュで行うと、リストボックスのようなものを最初から作成する必要があります...

8
sean riley

私の意見では、Flexフレームワークの最も重要な機能はコンポーネントのライフサイクルであり、プロパティ、コンポーネントサイズ、および階層的レンダリングの検証/無効化のための非常にエレガントなモデルを提供します。

開発者にとっての利点は、ビジネスロジックとレンダリングのために個別のアプリケーションフェーズを作成し、フレームを描画する前の最後の瞬間まで、高価なジオメトリとレンダリングコードを回避することです。

これは、それがどのように機能するかを説明する本当に良いプレゼンテーションです:

http://tv.Adobe.com/#vi+f15384v1002

フレームワークのデフォルトのコンポーネントとコンテナを使用している場合、モデルは非常に適切に設計されているため、Flex開発の大部分の間、コンポーネントのライフサイクルはほとんど完全に見えません。独自のコンポーネントの開発を開始するときだけ、内部の仕組みを学ぶ必要があります。

Flash環境、または純粋なActionscriptで開発している場合、それは得られません。純粋なAS3アプリケーションを開発する人は、ビジネスロジックをレンダリングから分離するためにveryを慎重にコーディングする必要があります。そうしないと、パフォーマンスが大幅に低下します。

6
benjismith

[...]フレックスなしでFlashを使用したいのはなぜですか?

Flexは新製品ですが、FlashはMacromediaの時代から存在していました。デザイナー、アニメーター、およびプログラミング教育の主食に慣れていないほとんどの人は、おそらく他のほとんどのそのようなソリューションよりもFlashを習得しやすいでしょう。

4
dirkgently

ターゲットが違います。 Flexはプログラマー向けで、FlashはアーティストやWebデザイナーにとってよりフレンドリーです。

3
Francis

Flashは、IDE)であり、(一般的に)アニメーションやタイムラインでうまく機能するものを作成するために使用されます。

Flexは、デスクトップに似たインタラクションを持つインターネットアプリケーションの作成に適しています。

フラッシュを使用する理由もちろん、より具体的にタイムラインに関連付けられた何かを行う必要がある場合は、もちろん!

3
Anthony

私はFlashの自由が好きで、Flashにアセットを埋め込むのは非常に簡単で、Flexで行うには少し混乱します。

Flexで気に入っている点の1つは、最小限の労力で滑らかなアプリケーションを作成できることです。これは、Flashでは永遠にかかります。

フレックスで実行できることはすべてフラッシュで実行できますが、実行にかなり時間がかかる場合があります。ただし、フラッシュでできるすべてをflexで行うことはできません。

FlexがすべてのUIプログラミングを処理し、ビジネスロジックに集中できます。フラッシュを使用すると、UIのプログラミングに大部分の時間を費やすことになります。

2
JD Isaacks

Flexは、アプリケーションベースのソリューションを開発する必要があるRIAアプリケーションを実行するためのソリューションのようなものだと思います。 Flexを使用すると、すぐに使えるものがたくさんありますが、ファイルサイズ、粒度などの面でも代償が伴います。

一方、ゲームなどの完全にカスタムされたソリューションで作業している場合は、空白のキャンバスで最初からやり直すことができるため、おそらくFlashが適しています。 Flexプラットフォームのすべてのアプリベースの機能を必要としないため、多くの人々はまだFlashを使用しています。

2
Ralph Caraveo

LinuxでFlexアプリケーションを簡単に開発できますが、Flashでは簡単に開発できません。

2

ここで提案されていない別の解決策は、両方を使用することです。 ContainerMovieClip を使用して、フレックスコンポーネントをFlashムービークリップに追加できます。 SpriteVisualElement を使用して、Flashムービークリップをフレックスコンポーネントに追加できます。言及されなかったもう1つのことは、アプリケーションのレイアウトでした。フレックスレイアウトシステムが組み込まれているため、フラッシュデメリットに対するフレックスプロになります。ただし、両方を使用する場合は、フレックスレイアウトシステムを使用してムービークリップをレイアウトできます。

また、フレックスは Apacheトップレベルプロジェクト になります。そして、それは今やコミュニティーからますます除外されています。

1
Ilya Gazman

FlashとFlexは2つの完全に異なるものです。1つはアクションスクリプトをサポートするデザインツールで、もう1つはアクションスクリプトも持つフレームワークですが、XMLベースのUI定義「言語」であるMXMLを中心に構築されています。

0
Oakcool