【问题标题】:Multi-purpose Parser多用途解析器
【发布时间】:2009-08-11 19:19:25
【问题描述】:

我正在考虑实现一个解析器框架,该框架将利用一组接口来轻松适应不同类型的数据格式。我想围绕我的控制器对象与此解析器交互的方式创建结构,并提出以下简单结构。我希望社区可以就以这种方式实施的优点/缺点提供任何 cmet 或想法:

package
{

     public interface IParser
     {   

             function loadAd(adURL:String):void;
             function parseAd():Object;
     }   
}




package
{

     public interface IXMLParser implements IParser
     {   

             function setAdData(adData:XMLNode):void;
     }   
}




package
{

    public interface IJSONParser implements IParser
    {   

            function setAdData(adData:JSON):void;
    }   
}
  1. 有没有办法扩展这些接口的功能?
  2. 这些接口有什么明显的限制吗?
  3. 使用接口继承有什么缺点吗?

【问题讨论】:

    标签: inheritance actionscript interface parsing


    【解决方案1】:

    我实际上是在 JSON 和 XML 的 XML 2007 会议的开幕会议上提出的。

    两者都是树形结构,可以合理地期望它们可以共享一个接口。当然,每个都有其特殊性,您需要决定如何处理诸如 XML 没有的 null 值和 JSON 没有的命名空间之类的事情。

    但原则上,这可能是一个不错的想法,使用某种“嗅探器”来区分两者。您可以找到 XML 文件 here 和 JSON 文件 here 开头的定义。

    我们的XML Converters 产品实际上就是利用这个思想来自动确定要解析的EDI 的类型,然后调用相应的解析器和存储库。

    【讨论】:

      猜你喜欢
      • 2019-08-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-07-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多