Path: utzoo!utgpu!water!watmath!clyde!rutgers!husc6!mailrus!umix!uunet!wor-mein!pete From: pete@wor-mein.UUCP (Pete Turner) Newsgroups: comp.software-eng Subject: Re: Question Re: Configuration Management Message-ID: <1328@wor-mein.UUCP> Date: 17 Feb 88 17:29:03 GMT References: <497@aimt.UUCP> <2640@ihlpe.ATT.COM> Reply-To: pete@wor-mein.UUCP (Pete Turner) Organization: Quantum Medical Systems, Issaquah WA Lines: 21 In article <2640@ihlpe.ATT.COM> daryl@ihlpe.ATT.COM (Daryl Monge) writes: > >None, unless of course the modules are unrelated. For example, wouldn't >you want the insert, delete, and search functions for a hash table >implementation in a single file "hash.c" for readability and maintenance? No, personally I wouldn't. I would put the files insert.c, delete.c and search.c (or HS_insert.c, HS_delete.c and HS_search.c) in the directory "hash". I just don't see any advantage in putting more than one function in each file. In this case, I think the boss has a good point. I've dealt with CM issues on large projects ( > 100K lines), involving a dozen or more developers, and things were a lot easier once we decided to have only one function per file. Also, it is a good idea to provide the "client" with a separate include file for each interface to a given "service". For example, if you're using a storage service (maybe a hash table implementation, maybe some other, you don't need to know as long as it performs to your reqirements) and you want to use the delete function, assuming you're writing in C, just include ST_delete.h and call ST_delete(....). ST_delete() may be a function call or it may be a macro - why should you care, as long as it works?