[Zope-CMF] Development Philosophy & Architecture Questions

Norfleet, Sheppard S. SNorfleet2@northropgrumman.com
Tue, 1 Apr 2003 13:00:56 -0800


Shane,

Thanks for the response. To my pee-sized intellect it seemed outright to be
easier to make one hard coded versioned content type, but I see your point
about making a tool instead.

BTW, I was looking at your VersionsTool in CMFStaging but am too much of a
CMF newbie to make hide nor hair of it and after perusing mail lists it
looks like no documentation was ever made for it.    Also, is it still being
developed?  It apparently hasnt been touched in about 8-months. 

I wish I knew about it when I was down in Fredricksburg for training a month
ago and could have gotten a bit more help on it.  I even talked to Rob Page
during lunch about making a document server and the need for version control
and he didn't bring up CMFStaging.  Though he did talk about a future
diffing functionality for word documents.

Warm Regards,

Sheppard Norfleet

-----Original Message-----
From: Shane Hathaway [mailto:shane@zope.com]
Sent: Tuesday, April 01, 2003 1:11 PM
To: Norfleet, Sheppard S.
Cc: 'zope-cmf@zope.org'
Subject: Re: [Zope-CMF] Development Philosophy & Architecture Questions


Norfleet, Sheppard S. wrote:
> When should one create a tool as opposed to a portal content type?  Other
> than the obvious difference in the nomenclature one could write in code in
a
> portal content type that should be placed into a tool instead; for
instance
> version control for content types.  Should one create a new version
> controlled document(file) content type, or make a tool that performs
version
> control on an existing type.

Basically, put functionality common to several content types in a tool 
rather than in a base class.  To give you some perspective, Zope uses a 
large hierarchy of base classes to implement functionality that spans 
content types.  But such a large hierarchy has become a difficult burden 
to bear.  So CMF moves common functionality to tools instead of base 
classes.

CMF doesn't always obey this rule because of constraints imposed by 
Zope2, so CMF has some base classes for content.  But Zope3 is meant to 
solve these issues and remove all the mix-in cruft.

Shane