我在一些项目中看到ppl有自己的“Debug类”。
所以,不要输入:trace(“看看这个!”),而是键入Debug.trace(“看看这个!”)。
我看到的唯一优势是您可以在Debug类中使用单个参数禁用每个跟踪调用..但是,这就是全部。
我的问题是,如果我在AS3中使用Debug类,我可以获得哪些优势?
答案 0 :(得分:3)
我实际上并没有这样使用我的调试类。我有一个日志框架,这就是日志记录的用途。我的Debug类有像
这样的东西// I usually use these for debugging and it avoids the need of an
// additional import.
function whatIs( obj:* ):String{ return getQualifiedClassName( obj )}
function describe( obj:* ):XML{ return describeType( obj ); }
我还有一个getLines方法 - 它返回长字符串,以便我可以轻松查看日志记录跟踪并查看特定点。
但最重要的一个:
function getStack():String {
try
{
throw new Error( "Someone set us up the bomb!" );
}
catch( e:Error )
{
return e.getStackTrace();
}
}
我甚至在getStack周围有一个包装器,它返回最近在调用getStack()的方法之前调用的类和方法。
答案 1 :(得分:1)
调试类允许您执行不同级别(通知,警告,错误,严重,启示等)。如您所述,您可以在一个地方禁用。您可以为邮件添加时间戳。您可以将输出发送到不同的位置,这对于调试实时应用程序或调试不经常发生的事情非常方便。您还可以使用一些逻辑来检测参数类型,并使用调试信息执行不同的操作。