私たちのアプリケーションは ActionScript2 で書かれており、約 50.000 行以上のコードがあります。私たちはそれを ActionScript3 に移植したいと考えており、オプションが何であるかを見つけようとしています。手動で行う必要がありますか、それともコンバーターを使用できますか? また、どのような問題が予想されるでしょうか?
4 に答える
少し前に同様の質問をしたので、役に立つかもしれません。
既存のプロジェクトを Flash 7/AS2 から Flex/AS3 に移行する最善の方法は何ですか?
いくつかの小さなタスクは自動化できるかもしれませんが (主にパッケージ宣言の修正)、それ以外は自動化できるとは思えません。
AS2 から AS3 に変換するとき、私はいつもうまくいきませんでした。主な理由は、プロセス全体の自動化されたスクリプトが適切でなく、率直に言って退屈だからです。長期的には、まだアクティブで更新中のプロジェクトの古い AS2 コードを更新することは素晴らしいアイデアです。AS3 はより優れた言語であり、AVM2 は AVM1 よりも単純に高速です。
スクリプトを使用して、多くのプロパティでアンダースコアを削除し、パッケージ情報を追加し、いくつかの基本インポートを実行できますが、私が見つけたのはおそらく、メインまたはマネージャー クラスをダンプすることです。 FLA のドキュメント クラス行に、コンストラクター以外のすべてをコメント アウトし、変換を開始してコメントを外します。遅いように思えるかもしれませんが、一度に 40 の異なるコンパイラ エラーを見つけようとすると、遅くなる可能性があります。
頑張ってください、それは必要な仕事ですが、楽しい仕事ではありません。
このタスクに自動コンバーターを使用できるとは思いません。コンバーターは、いくつかの手順を省略したり、変更が必要な場所を指摘したりできる場合がありますが、コードを手動で調べる必要があります。
たとえば、AS2 で _level0.variableName を参照すると、_root レベルの movieClip、HTML コンテナーから送信された FlashVar、またはコード自体によって作成されたオブジェクトを指すことができます。知る本当の方法はありません。(varname も外部で計算または読み取ることができるため、コード内で varname を探すことはできません。
そのような変換を行うには、十分な理由が必要です。なんらかの理由で AS2 が適切でなくなった場合は、AS3 に変換するのではなく、問題の解決を試みる必要があるかもしれません。
AS2 を AS3 コードに変換するためのオンライン サイトがいくつかあります。しかし、私の過去の経験によると、それは良くなく、100%の結果でした. AS3 では多くのことが変更されています。したがって、一部は自動化でき、ほとんどの人は手動で行っています。AS2 で _global を使用した場合、AS2 で _global.XXXX 変数を使用した静的変数を含む "_global" という名前のクラスを 1 つ宣言できます。
OOP 機能を簡単に使用できるようにするには、複数の方法を考えてください。_global 変数の例を 1 つ示します...