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 
be simple
interfaces extending IBrowserRequest. The only difference between skins and 
layers is
that only skins are registered as local utilities under a human readable name 
whereas
layers are plain old boring interfaces with no extra marker (it's not needed at 
all).

Along with that we can get rid of the <browser:skin /> and <browser:layer /> 
ZCML
directives and simply reuse existing, much simpler directives from the standard 
Component
Architecture (<interface /> and <utility />). This is not only a good step 
towards
reducing the ZCML directive proliferation, it's also a reflection of what's 
going on
under the hood. If we simplify under the hood, the Zope 3 developer should 
benefit from
that simplification as well. That's now happening.

The rest of the changes deal with small harmonizations that should make the 
understanding
of certain patterns easier (if they're always the same).

Looking-for-comments-as-usual-ly
+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:

<interface
         interface=".interfaces.I18NFeatures"
         type="zope.publisher.interfaces.browser.IBrowserLayerType"
         />


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 itself :)

Regards,
Dominik
begin:vcard
fn:Dominik Huber
n:Huber;Dominik
email;internet:[EMAIL PROTECTED]
tel;work:++41 56 534 77 30
x-mozilla-html:FALSE
version:2.1
end:vcard

_______________________________________________
Zope3-dev mailing list
Zope3-dev@zope.org
Unsub: http://mail.zope.org/mailman/options/zope3-dev/archive%40mail-archive.com

Reply via email to