From: Berend de B. <be...@po...> - 2001-05-28 08:39:52
|
Eric Bezault <er...@go...> writes: > I would suggest that you put all your external routines in > a class *_EXTERNALS along with routines without POINTERs > as arguments or results, and that you put this class in > clusters spec/[ise|se|ve|hact] (you can possibly use 'gepp'). I think #ifdefs are an absolutely bad way to manage code. Perhaps in a few low level classes I can live with them, but generally they generate a mess of used on a larger scale. So lets avoid them at all costs. Perhaps put this in the guidelines as well: 1. gepp only to be used for ise/se/ve/hact distinctions. 2. deferred classes are a much better choice. gepp is completely orthogonal to oo programming in almost any case. If you use it, there is something wrong. For example, if a new Eiffel compiler pops up (Eiffel .NET comes to mind), you have to scrawl all over your code to fix the #ifdefs and not forget anything. Deferred classes with a proper implementation work just as good and give you a nice warning if you forgot to implement a method. Groetjes, Berend. (-: |