From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: ** X-Spam-Status: No, score=2.6 required=5.0 tests=BAYES_20,INVALID_DATE, MSGID_SHORT,REPLYTO_WITHOUT_TO_CC autolearn=no autolearn_force=no version=3.4.4 Xref: utzoo comp.software-eng:1127 comp.lang.ada:2040 Path: utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!uflorida!gatech!hubcap!billwolf From: billwolf@hubcap.clemson.edu (William Thomas Wolfe,2847,) Newsgroups: comp.software-eng,comp.lang.ada Subject: Re: comments on comments Message-ID: <4533@hubcap.UUCP> Date: 24 Feb 89 01:57:01 GMT References: <2325@goofy.megatest.UUCP> Sender: news@hubcap.UUCP Reply-To: wtwolfe@hubcap.clemson.edu Followup-To: comp.software-eng List-Id: >From article <2325@goofy.megatest.UUCP>, by djones@megatest.UUCP (Dave Jones): > In an article by rjh@cs.purdue.EDU, Bob Hathaway says that he usually > uses ADT's to do top-down design and implementation. [...] But I don't > usually do top-down. I do bottom-up. Design, implementation, test, > everything. [...] I'll freely admit, there are times when top-down > is the way to go. But it's not the way I do most of the programs I > write by myself. I start out with a "bottom" that consists of lots of > [general-purpose] ADT's [...]. Next I use these to form ADT's which > are specific to the low-level objects under consideration, etc. The relevant literature states, I believe, that most good programmers combine the top-down and bottom-up techniques; the programmer typically starts with two interfaces and a semantic gap, and then builds each interface in the direction of the other in some programmer-dependent ordering, ultimately bridging the gap by joining the two interfaces at some point in the "middle", somewhere between the two. Thus, rather than argue which face of the coin is better than the other one, perhaps the participants in this discussion should recognize that each strategy has its advantages, and that each functions best when applied in conjunction with the other. Bill Wolfe, wtwolfe@hubcap.clemson.edu