アプリケーションを ActionScript2 から ActionScript3 に移植する最良の方法は何ですか?

StackOverflow https://stackoverflow.com/questions/101347

質問

私たちのアプリケーションは ActionScript2 で書かれており、約 50,000 行以上のコードがあります。私たちはこれを ActionScript3 に移植したいと考えており、どのようなオプションがあるかを調べています。手動で行う必要がありますか、それともコンバータを使用できますか?また、どのような問題が予想されますか?

役に立ちましたか?

解決

少し前に同様の質問をしましたので、参考になるかもしれません。

既存のプロジェクトを Flash 7/AS2 から Flex/AS3 に移行するための最良のアプローチは何ですか?

いくつかの小さなタスク (主にパッケージ宣言の修正) は自動化できるかもしれませんが、それ以外は自動化できるとは思えません。

他のヒント

AS2 から AS3 に変換するときは、いつもうまくいかないことがありました。その主な理由は、プロセス全体に適切な自動スクリプトが用意されておらず、率直に言って退屈だからです。長期的には、まだアクティブであり、それ自体が更新されているプロジェクトで古い AS2 コードを更新することは素晴らしいアイデアです。AS3 は単に優れた言語であり、AVM2 は AVM1 よりも単純に高速です。

スクリプトを使用して、多くのプロパティのアンダースコアを削除したり、パッケージ情報を追加したり、基本的なインポートを実行したりすることもできますが、おそらく私が見つけた最良の方法は、メインクラスまたはマネージャークラスをダンプすることですFLA のドキュメント クラス行に追加し、コンストラクター以外のすべてをコメントアウトして、変換とコメント解除を開始してください。遅いように思えるかもしれませんが、40 個の異なるコンパイラ エラーを一度に解決しようとすると、結果的に遅くなる可能性があるような気がします。

頑張ってください、それは必要な仕事ですが、楽しい仕事ではありません。

このタスクに自動コンバータを使用することは決してできないと思います。コンバーターを使用すると、いくつかの手順を節約したり、変更が必要な場所を指摘したりできる場合がありますが、手動でコードを確認する必要があります。

たとえば、AS2 で _level0.variableName を参照すると、_root レベルの movieClip、HTML コンテナから送信された FlashVar、またはコード自体によって作成されたオブジェクトを指すことができます。実際に知る方法はありません。(varname も外部で計算または読み取りできるため、コード内で varname を探すことはできません。

このような変換を行うには、十分な理由が必要です。何らかの理由で AS2 が適切でなくなった場合は、AS3 に必要なちょっとした機能があるからといって、AS3 に変換するのではなく、問題の解決を試みるべきかもしれません。

一部のオンライン サイトでは、AS2 コードを AS3 コードに変換できます。しかし、私の過去の経験によれば、それは良くなく、100%の結果でした。AS3 では多くのことが変更されています。したがって、一部は自動化できますが、ほとんどは手動で行う必要があります。AS2 で _global を使用した場合は、AS2 で _global.XXXX 変数を使用した静的変数を含む、「_global」という名前の 1 つのクラスを宣言できます。

OOPs 機能を簡単に使用できるように複数の方法を考えてください。_global 変数の例を 1 つ挙げます...

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top