为什么大多数symfony2第三方捆绑包使用xml、一些yml和很少的注释进行配置?

为什么大多数symfony2第三方捆绑包使用xml、一些yml和很少的注释进行配置?,symfony,symfony-2.3,Symfony,Symfony 2.3,这仅仅是为了分离关注点吗 还有其他优势吗?您知道有哪些包使用注释来代替吗 另一个需要注意的是symfony标准默认使用yaml;食谱也是如此。这适用于symfony1,但可能没有任何变化 您的服务定义的最佳格式是什么 与YAML格式相比,使用XML格式有几个优点: 加载XML文件时,将使用 内置services.xsd文件 XML可以在IDE中自动完成 XML格式比YAML格式快 XML格式没有外部依赖关系(YAML格式依赖于 sfYAML组件) 这适用于symfony1,但可能没有任何变化

这仅仅是为了分离关注点吗

还有其他优势吗?您知道有哪些包使用注释来代替吗


另一个需要注意的是symfony标准默认使用yaml;食谱也是如此。

这适用于symfony1,但可能没有任何变化

您的服务定义的最佳格式是什么

  • 与YAML格式相比,使用XML格式有几个优点: 加载XML文件时,将使用 内置services.xsd文件

  • XML可以在IDE中自动完成

  • XML格式比YAML格式快

  • XML格式没有外部依赖关系(YAML格式依赖于 sfYAML组件)


    • 这适用于symfony1,但可能没有任何变化

      您的服务定义的最佳格式是什么

      • 与YAML格式相比,使用XML格式有几个优点: 加载XML文件时,将使用 内置services.xsd文件

      • XML可以在IDE中自动完成

      • XML格式比YAML格式快

      • XML格式没有外部依赖关系(YAML格式依赖于 sfYAML组件)


      这取决于捆绑包的开发人员。这取决于捆绑包的开发人员。此外,XML对服务/路由/参数等具有最高优先级。谢谢。很好的解释,如果它仍然适用于Symfony2,这很可能适用。我仍然想知道xml/yml与注释相比如何,为什么很少有bundle使用它。我相信其中一个原因是关注点的分离,但我想知道XML是否仍然比注释具有这些优势。我曾经读到,条令通过注释实现了新特性;如果这是真的,那一定有原因。我希望我能找到reading.Annotation,它是用非常难看的方法从代码中提取出来的——解析文件或者它来自反射。这是一个非常慢的方法,注释总是需要缓存。您可以在app/cache/annotation文件夹中看到此缓存文件。所以它是最慢的方式,也是最可读的方式。imho,在prod环境中,缓存始终处于启用状态,并且速度几乎相等。@Daniel-你能找到并发布关于原则和新功能的文章吗?如果他们真的那样做了,我会感到惊讶。所有的映射信息,不管源代码是什么,最终都会被缓存在一个php文件中,供系统的其他部分使用。我的意思是,他们首先实现了带有注释支持的新特性,然后添加了对xml和yml的支持。正如您所说,最终它会被缓存到一个php中。如果我找到它,我会发布它。此外,XML对服务/路由/参数等具有最高优先级。注册。谢谢。很好的解释,如果它仍然适用于Symfony2,这很可能适用。我仍然想知道xml/yml与注释相比如何,为什么很少有bundle使用它。我相信其中一个原因是关注点的分离,但我想知道XML是否仍然比注释具有这些优势。我曾经读到,条令通过注释实现了新特性;如果这是真的,那一定有原因。我希望我能找到reading.Annotation,它是用非常难看的方法从代码中提取出来的——解析文件或者它来自反射。这是一个非常慢的方法,注释总是需要缓存。您可以在app/cache/annotation文件夹中看到此缓存文件。所以它是最慢的方式,也是最可读的方式。imho,在prod环境中,缓存始终处于启用状态,并且速度几乎相等。@Daniel-你能找到并发布关于原则和新功能的文章吗?如果他们真的那样做了,我会感到惊讶。所有的映射信息,不管源代码是什么,最终都会被缓存在一个php文件中,供系统的其他部分使用。我的意思是,他们首先实现了带有注释支持的新特性,然后添加了对xml和yml的支持。正如您所说,最终它会被缓存到一个php中。如果我找到它,我会把它寄出去。