privateまたはモジュールの洗練されたツリーを備えた大きなライブラリパッケージがあると考えてくださいpackage—それを呼びましょうfunnylib。funnylib.fooエンドユーザーが内部モジュール(など)に直接触れることは望ましくないためfunnylib.bar、代わりに外部インターフェイスを提供したいと思います—次のように:
Funnylib.d:
public import funnylib.foo;
public import funnylib.bar;
public import funnylib.baz;
エンドユーザーのようにインポートするだけimport funnylibです。問題は、Dが同時に持つことfunnylib.dを禁止していることです。funnylib/
__init__.pyPythonのように、Dに「デフォルトパッケージモジュール」のようなものはありますか?いいえの場合、上記の設計を行う正しい方法は何ですか?
Update1: iternalモジュールをのようなパッケージに移動することを考えたfunnylib_privateので、funnylib正常にインポートされますが、funnylibが保護されたシンボルにアクセスしなくなりpackage、ファイルレイアウトが不快になるため、保護のコストが低下します(非常に望ましくありません)。