[comp.lang.c++] Abstract Firewalls Was: Re: The need for OO.

hcobb@ccwf.cc.utexas.edu (Henry J. Cobb) (11/27/90)

Bob>Complexity is complexity.  Each software project has it.  When you
Bob>become involved in a project you must come to grips with all the
Bob>conventions, paradigms, utilities, file formats, etc of that project.
Bob>Depening on the size of the project, this can be a huge learning
Bob>curve.  The idea behind OO is to minimize this learning curve on a
Bob>per-project basis, and make it part of the common language so that it
Bob>can be learned ONCE and used on many projects.

	The problem is that everything depends on everything else and it all
wedges down to main, where the overall logic of the program is set. (How
many files get included when you compile your main module? :)

	What I've been working with is abstract firewalls: abstract classes
that exist just to define the functional interface, without tying down an
exact size. (Which could depend on the size of subunits, which are hidden 
behind a further firewall).

	One of the abstractions that I am working with is the pipe.  An
internal pipe to provide filters and redirection inside the program. Thus
I create aplications that are simple to build without the runtime cost of
OS calls to run the parts as seperate parts of a shell pipe.

-- 
	Henry J. Cobb	hcobb@ccwf.cc.utexas.edu  SFB Tyrant