On 2 Nov 2001, at 8:15, Dan Breslau wrote:
> I'm very interested to know what sort of design tools
> you're looking for: Visual design tools (like PB), or
> class design tools (like Rational Rose), existing
> code packages (and if so, what kinds?), or something
> completely different. Not that I can promise to
> provide it immediately, of course :-)
>
I wasn't thinking in terms of design tools but more in terms of
design guidelines and recommendations. Here is the line of
thinking that this question grew out of.
When I finished my first PB app I was extremely pleased and proud
and it did everything that it was supposed to do. However, if I had
been able to look back on it two years later I would have seen
newbie written all over it.
PB is an extensive and robust language and there are almost
always multiple ways to implement any specific functionality. After
working with the product daily for months and years you acquire a
repertoire of techniques that have proven to be good ways to do
certain things. These may have come from trial and error or they
may have come from books, PB's classes, web sites, etc. If you
are new to the tool, most of the techniques you come up with will
not end up in the best practices manual.
I would be so bold as to assert that everything stated in the
previous paragraph applies to Curl too. However, we're kind of
short on people with years of experience with Curl.
I think I was fishing for two things when I asked my question about
resources that would assist our design.
One is sample code for implementing various functionality that is
commonly found in Windows apps. I'm thinking here not only in
terms of code attached to individual objects but also to how many
levels of inheritance make sense to do certain things and what
kinds of things you do at which levels in various object hierarchies.
The other thing that I was hoping for was some fairly specific big
picture guidelines for organizing a sizable Curl project. What has
been proven to work well for splitting functionality amongst various
packages and multiple developers.
I've been digging through the code on the Curl web site and on
curlexamples.com and these are certainly a big help. Perhaps it is
too early in the evolution of Curl to come up with any kind of a best
practices manual but I thought I would ask the question with the
hope that we could avoid as many pitfalls as possible.
Gene
|