How to organize using modules?
Jacob Carlborg
doob at me.com
Tue Dec 31 04:02:08 PST 2013
On 2013-12-31 07:01, Afshin wrote:
> Is it possible to describe modules in terms of packages (as found in Java)?
>
> The features that Java packages have that I can't seem to get in D are:
> 1) You can have classes that are in the same package, but kept in
> separate files.
See below.
> 2) You can import many classes using the '*' syntax.
You cannot do that in D. You can do something similar as described here:
http://forum.dlang.org/thread/garueoxkjjqgqpqqhrmc@forum.dlang.org#post-sdueirvfgsxjtahmapla:40forum.dlang.org
> Is this possible in D?
>
> What I understand is that if I have ClassA and ClassB in Module1, and I
> want to keep the classes in separate files, then I have to use the
> following module statements:
>
> in ClassA:
> module Module1.ClassA;
>
> in ClassB:
> module Module1.ClassB;
>
> But now it becomes cumbersome to use the classes because now I have to
> import them explicitely:
>
> import Module1.ClassA;
> import Module1.ClassB;
Yes, that's how it works in D. That's because in Java there's a
one-to-one mapping of classes and files. In D you can have many classes
(or other declarations) in the same file. I suggest you use this approach.
> If I wanted to use:
> import Module1;
>
> Then it seems I have to have ClassA and ClassB in the same D file.
>
> Am I missing something?
--
/Jacob Carlborg
More information about the Digitalmars-d-learn
mailing list