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