Annotations should be used to set default values and the AnnotationReader should be able to get these settings from an external configuration files and merge them together. I guess I can write my own AnnotationReader, but this should be done by the core team so all symfony projects will use the same convention.
How a developer should deal with a hardcoded annotation which define the entity's table name or the routing ? Symfony 2 implements the dependency injection pattern, the annotation pattern is just against this idea as for now the API does not allow to change these values [1]. I just keep thinking about people writing bundles and integrating these bundles. Bundles should be able to work out of the box (with DI or annotation), but all settings should be easily changes without extended too much classes. [1] http://www.doctrine-project.org/projects/common/2.0/docs/reference/annotations/en my 2 cents On Tue, Sep 7, 2010 at 12:59 PM, Navid Mitchell <[email protected]> wrote: > Thanks everyone for taking the time to give me their feedback > > >> I'm not sure however if the multiplication of configuration options > >> (xml/yaml/php/annotations) isn't gonna bite us in the ass at some point > >> int he future.. It's nice and all that things are so flexible but aren't > >> we abusing it at the moment? > > I do agree that there are more configuration options than needed. > > I think that annotations provide some flexibility that you cannot get > from any "external" text file. I have spent the last few years working > on a large Java application 400k+ LOC. Initially we had a lot of > individual xml configurations hibernate/spring/struts/ect.. This > becomes rather cumbersome to maintain as an application grows. We have > migrated the majority of our configurations to annotation based > configurations. This greatly simplifies maintainability, when > changing the business requirements of a class you can update the > annotations at the same time without having to modify an additional > file. > > >I have not read the code thoroughly but it looks like you use Addendum > >to parse annotations. But in Symfony2, we use the Doctrine2 annotation > >parser. > > Yes you are right. I had planned on moving this to whichever standard > annotation parser was desired if the patch was accepted. Thus far I > ported some of my original code to Symfony, since I thought it may be > useful. If you want I would be happy to put the finishing touches on > the Bundle. > > >anyway, it was just an example about a general concern i have with > annotations. for one they need to still enable extending, that being said in > many cases extending will obviously be limited by whats possible without > breaking the "is a" relation, in which case its mainly >overwriting a > previous definition with another value and not necessarily removing or > adding entirely new things that need to be merged. but just like my routing > example, there are some things that simply shouldnt be moved into the > controller or whatever definition. > > I definitely agree that some things are better not included in a class > directly. For example your database configuration data, this > particular data is a requirement but does not necessarily relate to > any specific objects implementation. > > For the controllers I was thinking of modeling something after Springs > controller annotation support. > > http://static.springsource.org/spring/docs/3.0.x/spring-framework-reference/html/mvc.html#mvc-ann-controller > > Now that I know Fabien has already been working on this I will wait to > see what he has already done. > > > Thanks Again for all the feedback > Navid > > -- > If you want to report a vulnerability issue on symfony, please send it to > security at symfony-project.com > > You received this message because you are subscribed to the Google > Groups "symfony developers" group. > To post to this group, send email to [email protected] > To unsubscribe from this group, send email to > [email protected]<symfony-devs%[email protected]> > For more options, visit this group at > http://groups.google.com/group/symfony-devs?hl=en > -- Thomas Rabaix http://rabaix.net -- If you want to report a vulnerability issue on symfony, please send it to security at symfony-project.com You received this message because you are subscribed to the Google Groups "symfony developers" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/symfony-devs?hl=en
