[Zope3-dev] Last chance to comment on Simplify skinning
Benji York
benji at zope.com
Thu Feb 16 10:00:14 EST 2006
Gary Poster wrote:
> What if we still deprecated browser:layer but
> kept a redefined version of browser:skin? Then your zcml--
>
> <interface
> interface=".interfaces.ShanghaiSkin"
> type="zope.publisher.interfaces.browser.IBrowserSkinType"
> />
>
> <utility
> component=".interfaces.ShanghaiSkin"
> provides="zope.publisher.interfaces.browser.IBrowserSkinType"
> name="ShanghaiSkin"
> />
>
> could become
>
> <browser:skin component=".interfaces.ShanghaiSkin"
> name="ShanghaiSkin" />
Even though it's longer, I still like the interface/utility version. I
think it really helps the developer understand what's going on and that
it's not magic. The decreased brevity is of secondary concern to me.
More brainstorming: perhaps if there was a way to define ZCML in terms
of other ZCML we could have the best of both worlds. If someone saw the
shorter version in a config file and didn't know what it did, they could
go look up another file with the definition of "browser:skin" in terms
of interface and utility they could say "aha! I see how it works" and
then continue using the shorter version.
I know you can do that now by looking up the Python code that implements
browser:skin, but it seems too indirect to me.
--
Benji York
Senior Software Engineer
Zope Corporation
More information about the Zope3-dev
mailing list