Actionscript 3 在AdobeFlashProfessionalCS6中进行测试(Ctrl-Enter)非常慢

Actionscript 3 在AdobeFlashProfessionalCS6中进行测试(Ctrl-Enter)非常慢,actionscript-3,flash,flash-cs6,Actionscript 3,Flash,Flash Cs6,由于有几十个类和千分之一行代码,测试(Ctrl+Enter)变得越来越慢。 我每次都要等大约3分钟。 我有一个核心2由于2ghz 我没有使用图书馆 这正常吗?还有,有没有针对Flash的探查器工具可以提供帮助?我发现,一旦代码库开始增长,就没有多少东西可以改变这一点 通过避免导入不必要的类(如使用star importsimport flash.display.*;),可以帮助防止情况变得更糟 如果可能的话,把你的项目分解成更小的项目,然后把它们编译成SWC。从“主”项目中引用它们,将它们链接

由于有几十个类和千分之一行代码,测试(Ctrl+Enter)变得越来越慢。 我每次都要等大约3分钟。 我有一个核心2由于2ghz 我没有使用图书馆
这正常吗?还有,有没有针对Flash的探查器工具可以提供帮助?

我发现,一旦代码库开始增长,就没有多少东西可以改变这一点

  • 通过避免导入不必要的类(如使用star imports
    import flash.display.*;
    ),可以帮助防止情况变得更糟

  • 如果可能的话,把你的项目分解成更小的项目,然后把它们编译成SWC。从“主”项目中引用它们,将它们链接在一起。这将节省大量时间,因为它们是预编译的

  • 上述方法也适用于矢量对象和位图

  • 如果有大量不同的文本族和动态文本字段,请确保只嵌入必要的glyph,因为它们也会占用编译时间


另一个快速修复方法是尝试关闭文档脚本设置中的“警告模式”。 这会对大型项目的编译时间产生巨大影响。

关闭“警告模式”

警告模式进行了大量ActionScript2.0检查,因为我的行数达到了数千行,编译太长了


此外,您也可以偶尔打开它以查看警告。

我正在使用一些带有*的导入,许多嵌入的TLF文本将尝试修复它们。关于SWC,我不知道怎么做,是否有任何具体的文档?这里有一篇好文章让您开始,文档总结了导出SWC的步骤,使用“星导入”有什么帮助?这和我为某个类做一个include没有什么不同,这个类在我的代码中没有实际使用。未使用的类不会编译到SWF周期中。因此,除非我遗漏了一些东西,否则星型导入除了为开发人员提供“方便”之外,什么都不做。然而,当我遇到一个我以前从未见过的新类时,我实际上更喜欢它们不使用星导入。查看所有正在导入的类,可以让您了解类可能正在执行的活动。您是对的,它在编译的swf中不包括未使用的类。然而,许多flash开发人员倾向于导入flash库中的每个包,即使它们可能不被使用。这与许多类相结合将增加编译时间。这就是为什么我建议避免使用星型导入,除非您使用整个软件包。忽略警告不是一个好习惯。您可能会造成更多的“损害”(在运行时b/c忽略警告)。我在引用中使用了“损坏”一词,因为我们只是在这里和那里讨论通过修复编译器警告来减少几毫秒。根据我的经验,将3分钟的编译时间减少到15秒对于生产率来说是一个巨大的胜利。当然,你应该定期打开“忽略警告”来检查它发现的那些小东西。你有一个公平的观点,@adamh我想这是为了找到一个平衡:)几十个类和数千行并不多,在几秒钟内编译应该没有问题。您的项目中有很多非代码资产吗?另外,你是为网络而不是手机而编译的,对吗?