www.delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/1997/05/31/11:26:58

Sender: crough45 AT amc DOT de
Message-Id: <97May31.171946gmt+0100.16641@internet01.amc.de>
Date: Sat, 31 May 1997 16:23:36 +0100
From: Chris Croughton <crough45 AT amc DOT de>
Mime-Version: 1.0
To: adalee AT sendit DOT sendit DOT nodak DOT edu
Cc: djgpp AT delorie DOT com
Subject: Re: Quake vs. Demos

adalee AT sendit DOT sendit DOT nodak DOT edu wrote:

> C++ does not suck.  It simply is not the ideal language for all
> situations.

True.  The same is true of any language, for that matter.

> If you try to code a procedure oriented program, such as a game, with it,
> you are cruisin' for a bruisin'.  However, ask any software engineer, 
> computer science student, or for that matter a professor, and they will
> tell that C++ and other object oriented languages are indisposable.  

Just like the academics tried to tell us Lisp was the best thing
since sliced bananas, or Pascal...

> You see, when a team of twenty people start to work on a massive 
> program, a procedure oriented language simply ***will not work***.  

Oh dear.  I guess I'd better resign from all those C projects I've 
been on, then.  Can I have your real name so I can quote you as a
reason to abandon the projects?

> The problem is that the complexity of today's software is too 
> much for the human mind to comprehend.  With a procedure oriented 
> language, all parts of the program are inextricably linked with 
> the rest of the program.  You cannot write one part of the program 
> without understanding the rest of the program, and that's impossible.

Rubbish.  You write it as modules, with defined interfaces, and test
each part separately and put them together.  If the interfaces have
been defined correctly, and people have implemented them as defined,
there's no problem.

For a lot of problems modular programming has no problems as long as 
you are disciplined.  But if you're not disciplined then your team
will have problems whatever your system, objects and classes won't
save you.  In fact they may even make it worse because you think you
know what it does when in fact its broken.  That's especially true 
if you use overloaded operators (like the abominable << and >> as 
file operations in C++), because they are usually not obvious.

"Object Oriented" is simply the latest in a series of fads in 
programming.  Certainly it has its uses (I use it myself in some 
programs) but it's equally certainly not necessary for all large
projects.

Chris C

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019