No header files?

"Jérôme M. Berger" jeberger at free.fr
Thu Oct 22 11:10:24 PDT 2009


Steven Schveighoffer wrote:
> On Wed, 21 Oct 2009 18:16:48 -0400, AJ <aj at nospam.net> wrote:
> 
>>
>> "Steven Schveighoffer" <schveiguy at yahoo.com> wrote in message
>> news:op.u157hfkveav7ka at localhost.localdomain...
>>> On Wed, 21 Oct 2009 17:59:52 -0400, AJ <aj at nospam.net> wrote:
>>>
>>>> Since D has no header files, how does one create "a library" that 
>>>> another
>>>> developer can use without exposing the implementation?
>>>
>>> try dmd -H.
>>>
>>> .di files are D header files, basically used for the reason you specify.
>>
>> OK, so header files can be generated. The thing is though, when I am
>> designing at the code level, I start with the declarations (such as class
>> data members and methods) and do the implementation (or one can hand 
>> it off
>> to someone else) afterwards. That serves as the "blue print" for further
>> development and remains as first level of documentation as well. Working
>> with just "implementation files" seems to be putting the cart before the
>> horse. While eliminating something unnecessary is something to strive 
>> for, I
>> don't think header files are unnecessary in the development process 
>> (i.e., I
>> don't think that relegating them to just the situation given with my 
>> OP is
>> good, exactly for the reasons of usefullness I gave).
> 
> Separating interface from implementation is good -- but not if you have 
> to repeat the interface (as you do with C++ or C).  What happens (and 
> being a long-time C++ developer, I've had my fair share of experience 
> with it) is that the interface gets out of sync with the implementation, 
> so weird shit happens.
> 
	I've never had any problem keeping my .h files in sync with the .c 
files. Just include the .h and the compiler will barf if they don't 
match...

		Jerome
-- 
mailto:jeberger at free.fr
http://jeberger.free.fr
Jabber: jeberger at jabber.fr

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 197 bytes
Desc: OpenPGP digital signature
URL: <http://lists.puremagic.com/pipermail/digitalmars-d/attachments/20091022/d1070d5a/attachment.pgp>


More information about the Digitalmars-d mailing list