On 28.02.2011 08:29, Fabien Potencier wrote:
> So, along the Symfony\Component and Symfony\Bundle namespaces, I propose
> to add a Symfony\Bridge namespace:
> 
> Symfony\Bridge\Twig\Extension\TransExtension
> Symfony\Bridge\Twig\Extension\FormExtension
> Symfony\Bridge\Twig\Extension\YamlExtension
> Symfony\Bridge\Doctrine\ACL\
> Symfony\Bridge\Doctrine\Form\
> ...

I think this is a nice change. The only concern I have is about naming.

Already in those examples I see different things:

Extensions for twig to make helpers for various things
Driver for the ACL to make it support Doctrine
Form "stuff" for Doctrine support

Which is the "owning" side, which component/lib should have the main
namespace?

I have a few ideas, good ones and bad ones (I'll let you guess which is
which:)

1) Alphabetically take the two components/libs together, and anything
that connects them goes in there:

Symfony\Bridge\DoctrineForm\..
Symfony\Bridge\AclDoctrine\..

+ consistency and no need to have two dirs to connect one component to a
library or another component
+ just one namespace clearly saying what is what
- looks a bit weird

2) Take the component name as the "owner" and add anything in it that
supports it:

Symfony\Bridge\Form\Doctrine\..
Symfony\Bridge\Form\Twig\..
Symfony\Bridge\Acl\Doctrine\..
Symfony\Bridge\Validator\Translation\..

+ looks nicer
+ maybe clearer dependencies, i.e. if you use the Form component, you go
in that dir and see all your options for bridges.

3) Take the library as the owner, and list all components in it

Symfony\Bridge\Doctrine\Form..
Symfony\Bridge\Doctrine\Acl\..
Symfony\Bridge\Translation\Validator\..

+ also looks decent
- dependencies are backwards, if you use doctrine you can check any
component that supports it, but that's probably not too interesting for
people using components out of symfony, and symfony users won't have to care

Cheers

-- 
Jordi Boggiano
@seldaek :: http://seld.be/

-- 
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

Reply via email to