Path: utzoo!utgpu!water!watmath!clyde!rutgers!rochester!udel!gatech!dcc1!emcard!polycatt!philabs!ttidca!quad1!oleg From: oleg@quad1.quad.com (Oleg Kiselev) Newsgroups: comp.lang.c Subject: Re: A bad design decision early on in A Message-ID: <1413@quad1.quad.com> Date: 6 Jan 88 00:01:36 GMT References: <1322@sugar.UUCP> <47000028@uxe.cso.uiuc.edu> <7611@sunybcs.UUCP> Reply-To: oleg@quad1.quad.com (Oleg Kiselev) Organization: HASA Lines: 23 In article <7611@sunybcs.UUCP> ugfailau@joey.UUCP (Fai Lau) writes: > I'll have to agree. If you have really settled in doing your >works in C, then you can't be too concerned about using things >like data hiding for its own sake. C is such a unstructured language >that the best way to use it is to use it in any which way it works. That's absolute rubbish. "Data hiding" is a handy and elegant concept that relieves programmers from being forced to write hard-to-modify code. That's why libraries are such a convenient way to deal with large data constructs: the internal (in library) representation and handling of data can be changed at any time without having to change any of the code using the library (assuming the code is well-behaved and is not snooping in the innards of the data structs). C is a very good language to implement the "orthodox" software engineering concepts. It can be made very structured and very easy to read and modify (as well as it can be perverted into an obfuscated, unreadable and unmodifiable monstrosity). -- Oleg Kiselev -- oleg@quad1.quad.com -- {...!psivax|seismo!gould}!quad1!oleg HASA, "A" Division DISCLAIMER: I don't speak for my employers.