分析 ActionScript-3 代码
Posted
技术标签:
【中文标题】分析 ActionScript-3 代码【英文标题】:Profiling ActionScript-3 Code 【发布时间】:2009-08-10 14:16:37 【问题描述】:是否有任何方法或工具可以在不使用 Flex 的情况下分析 AS3 代码?
如何分析用 Flash CS3 和 AS3 编写的现有项目?
【问题讨论】:
【参考方案1】:Adobe 最近发布了一种新的 Flash 分析工具,称为 Adobe Scout:
http://gaming.adobe.com/technologies/scout/
它是一个独立的工具(您不需要 Flex/Flash Builder),它适用于现有内容。您可以分析您的 ActionScript 3 执行情况,它还向您展示了有关 Flash Player 在幕后执行的操作的大量详细信息。请注意,对于现有内容,您需要“选择加入”您的 SWF 以获取有关您的 ActionScript 函数的数据 - 只需在分析之前在您的 SWF 上运行此 Python script。
Scout 在试用期内是免费的 - 您只需注册一个免费的 Creative Cloud 帐户。之后,将继续提供免费的基本版,完整版作为付费 Creative Cloud 帐户的一部分提供。
【讨论】:
【参考方案2】:Flex 实际上是一个框架。我认为您的意思是 Flex Builder,它是一个包含内置分析器的 IDE。
这还取决于您想要分析的信息。内存使用、CPU 性能、特定函数被调用的次数……这些都是不同的指标。
对于内存,您可以使用System.totalMemory。对于 Flash,CPU 使用率并不像帧率(这是一个间接的 CPU 使用率指标)那么重要。有很多方法可以测量帧率,但我通常在 Google 上搜索一个库然后使用它。类似Hi-ReS! Stats 或AS3 SWF Profiler。周围有成千上万的人。
至于其他指标……你必须具体。如果您想了解诸如“哪个函数的执行时间最长?”之类的信息。那么您可能只需要亲自动手并将计时器放入您的代码中...... IOW 手动检测您的代码。
【讨论】:
【参考方案3】:我会推荐 Flash 大师 Grant Skinner 的性能分析器
"将它指向一个类的实例, 它将测试所有公众 方法就可以了。或者,使用属性或 用于形式化测试的参数 名称、描述和具体 方法列表。
您甚至可以使用 PerformanceTest 测试复杂的渲染时间 向量或过滤器。
您还可以轻松自定义它的方式 记录测试结果以输出 它们以不同的方式保存到文件中, 或绘制结果。
http://www.gskinner.com/blog/archives/2009/04/as3_performance.html
【讨论】:
以上是关于分析 ActionScript-3 代码的主要内容,如果未能解决你的问题,请参考以下文章
ActionScript 3 教程1,Actionscript代码
actionscript 2 到 actionscript 3 我的代码
将 ActionScript 2 SWF 转换为 ActionScript 3 SWF 文件(可以剥离代码)