(事前にお詫び申し上げますが、私はFlashしか本当に知りません。私のFlexの経験は基本的にゼロです。Flexの人々が知っている非常に標準的で明白なワークフローソリューションがあるかもしれません)
グラフィカルに非常に複雑なUI要素がいくつかあります(これらはコンポーネントではなく、単なるスプライトです)。それらをコンパイルするのに長い時間がかかるので、私はそれらを外部の.swcに移動しようとしてきました。ただし、いくつかのコードをこれらのクラスに関連付けたいのですが、コードを変更するたびにグラフィカルアセットを再コンパイルする必要はありません。
現時点では、次のように設定しています。UI要素は別のFLAで作成され、SWCにエクスポートされます。私のプライマリFLAには、SWCの各グラフィックアセットを拡張するactionscriptクラスがあります。例えば:
external.swc:
(some symbol defined in the Library and exported for actionscript in frame 1)
class: com.foo.WidgetGraphic
base: flash.display.Sprite
main.fla:
Widget.as:
package com.foo {
public class Widget extends WidgetGraphic {
...
}
}
これは機能しますが、時間がかかり、エラーが発生しやすくなります。むしろ、各グラフィカルアセットから継承する必要をなくし、それらを直接定義するだけでよいのです。私が達成しようとしていることを行うためのより良い方法はありますか?
注:ここでの主な懸念事項はコンパイル時間です。映画、オーディオ、フォントはありません。コンパイル時間が大幅に遅くなっているように見えるベクターアートアセットがたくさんあります。デバッグしているときは、コードを変更するだけで、アートを再コンパイルし続ける必要はありません...