Philipp von Weitershausen wrote:
(http://dev.zope.org/Zope3/SimplifySkinning) yet another overhaul.
Basically, it now proposes to go one step further: Layers and skins will always
interfaces extending IBrowserRequest. The only difference between skins and
that only skins are registered as local utilities under a human readable name
layers are plain old boring interfaces with no extra marker (it's not needed at
Along with that we can get rid of the <browser:skin /> and <browser:layer />
directives and simply reuse existing, much simpler directives from the standard
Architecture (<interface /> and <utility />). This is not only a good step
reducing the ZCML directive proliferation, it's also a reflection of what's
under the hood. If we simplify under the hood, the Zope 3 developer should
that simplification as well. That's now happening.
The rest of the changes deal with small harmonizations that should make the
of certain patterns easier (if they're always the same).
+1 in general, but two cosmetics-change-requests.
1. The brand *skin* and *layer* are fairly common and they are
reflecting two logical uses cases. At a first glance the usage for a
layer type is not given, but the layer concept is still interesting to
build modular skins. The layer audience could be the developers which
like to share layer specific informations. IMO an use case for an
Browser Layer Names utility could be a corresponding
online-documentation within the api-doc. I would suggest to register the
layers like skins using a ILayerBrowserType interface:
2. I liked the naming ISkinType and ILayerType much more (instead of
IBrowserSkinType/ IBrowserLayerType), because this browser-specific
differentiation is already given by the package hierarchy and those
ILongCamelCaseWordingsThatTriesToExplainEverything are hard to type and
at the end they confuse newcomers even more than the simple ones. Please
keep the naming also simple and stupid like the skinning simplification
tel;work:++41 56 534 77 30
Zope3-dev mailing list