From: <gh...@nc...> - 2001-11-03 03:52:27
|
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 |