Hi ZClass Bashers, ;-) I know I'm coming late to this roast... and I basically agree with all of Max's points, at *some* level. However.. I think that while ZClasses may have missed the mark on some points, and will never be a great answer for "serious" developers working on complex stuff (requiring fancy class hierarchies), for certain purposes they have a lot to recommend them. Generally, when I start working on a filesystem based Zope Product, there's a lot of housekeeping to do before I can really get started with the "meat" of the project. The way I "normally" do it, is to take some other product I've written, rename a bunch of stuff, throw a bunch of stuff out, and hope I've got it all right. ;-) The good news is, that if I don't have it all right... I can just change it, and everything is still OK. But it takes a lot of time, and a lot of fiddling around. If what I need is basically a very simple class, with some "standard" property types, and some simple methods, a ZClass is a very quick and painless way to get there in 5 minutes. I think of ZClasses as a sort of RAD tool to break into something quickly and try out some ideas. Maybe the project will never need anything more. If it does, I refactor and go the filesystem based Product route, but probably *after* I've learned a lot about the problem(s) and have some clear idea of how to avoid any pitfalls I've discovered. If you mix this kind of thinking with ZPatterns, then it's even cleaner, since the application is really tied together in instance space (Racks and Specialists) and the low level classes don't generally handle any inter-object collaboration (i.e., you don't need fancy subclasses of other zope objects since the only classes you're actually *writing* are SimpleItemish things). At this point with various tricks and templates, I can cook up a fairly fancy ZPatterns/ZClass based application with five or six different classes all collaborating and doing fairly fancy stuff (e.g., backed by a relational database, or ZCatalog) in a day or so (no UI, just connections and problem domain stuff). If I were doing the same thing with all filesystem based products/classes, it would probably take me three times as long (rough guess). Anyway.. I just thought ZClasses didn't deserve quite the degree of disrespect that I've been hearing, since *I* have at least been grateful for their existence, even if I have cursed them occasionally when I tried to push them further than they could reasonably go. Just because you can't build a skyscraper with a pocketknife, it doesn't mean that they're not handy to have when you need one. ;-) enjoy, -steve On Wednesday, May 29, 2002, at 01:45 AM, Chris Withers wrote:
Casey Duncan wrote:
You make good points. I would recommend putting this somewhere more permanent, such as a page on Zope.org.
How about the front page of zope.org? *weg*
Chris
_______________________________________________ Zope maillist - Zope@zope.org http://lists.zope.org/mailman/listinfo/zope ** No cross posts or HTML encoding! ** (Related lists - http://lists.zope.org/mailman/listinfo/zope-announce http://lists.zope.org/mailman/listinfo/zope-dev )