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"이라는 이름으로 하나의 클래스를 선언할 수 있습니다.

OOP 기능을 쉽게 사용할 수 있는 다양한 방법을 생각해 보세요._global 변수에 대한 한 가지 예를 들어 보겠습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top