2011-04-09 8 views
6

¿Me puede dar alguna razón uno es mejor que el otro?Anotaciones de PHP: Addendum o Anotación de Doctrina?

Aquí mi lista por ahora:

  • Addendum es un proyecto dedicado para que
  • Adición parece tener más funcionalidades
  • Adición API parece más fácil de usar
  • Doctrina tiene más apoyo y más personas involucradas
  • Doctrine parece ser un proyecto más viva
  • La doctrina es totalmente compatible PHP 5.3, mientras Adición parece estar tratando de ser compatible (ver página principal)
  • Doctrina Anotaciones pueden almacenar en caché fácil

La decisión no es fácil ...

Respuesta

9

supongo que prefiero usar componente de la Doctrina:

  • nunca he oído hablar de Adición - aunque he oído mucho Abou t Doctrina (y lo han utilizado varias veces)
    • que significa que más de la comunidad y el apoyo para la Doctrina
  • Doctrina es utilizado por algunos grandes marcos (Symfony; y se puede integrar fácilmente con Zend Framework)
    • Lo que significa que es más probable que ya use Doctrine; y encontrar desarrolladores que están familiarizados con su sintaxis
  • Tal vez menos importante para usted, pero un tipo de equipo de Doctrina ha realizado un trabajo en conseguir Anotaciones integradas en PHP
    • Hay un RFC: Request for Comments: Class Metadata
    • por el momento, no parece que esto va a ser integrado en PHP, pero esto significa que hay trabajos realizados por el equipo de la Doctrina, que muestra su solución tiene algunos pensando
3

Por lo que vale ...

He estado usando Addendum desde hace un año, y me pareció ridículamente fácil de usar. Su extensión a PHP Reflection API es transparente y admite muchos más casos de uso que el componente de Doctrine Annotations.

Carece de espacio de nombres compatible, pero podría parchear la clase AnnotationMatcher para que aceptara clases con espacios de nombres (sin obtener coincidencias falsas de las etiquetas docblock) y funcionó como un amuleto.

Las anotaciones de Doctrine tienen en cuenta las sentencias de uso de PHP 5.3. Eso es lo único que Addendum no hace y la IMO no sería tan trivial de implementar.

Cuestiones relacionadas