19

ライブラリとそのコンテンツが定義される方法の背後にある理由は何だろうと思っていました。より具体的には、ライブラリはすべてのパーツをリストする必要があり、パーツはそれらが含まれるライブラリを記述する必要があります。

この双方向は私には不必要に思えます。ライブラリからパーツへの参照で十分だと思います。また、ライブラリにファイルを追加または削除する場合、変更が必要な場所が 2 つあります。

誰でもこれを説明できますか?

4

2 に答える 2

10

私はこれが具体的にどこにも対処されているのを見たことがありませんが、これについても疑問に思っていました。私が到達した結論は、クラス レベルのプライバシーではなく、ライブラリ レベルのプライバシーを使用することの兆候であるということです。

ライブラリがパーツをリストするだけでよい場合は、ライブラリをパーツとして宣言するだけで、ライブラリの内部プロパティにアクセスできます。

library hax;

part 'packages/somelib/secret.dart';

secret.dart のプライベート フィールドまたはメソッドにアクセスできるようになりました。これは、私がインポートしたサードパーティのパッケージで行うことができ、プライバシーの概念を冗談にしています。

同様に、part of宣言のみが必要な場合、任意のファイルは、そのライブラリの一部であると宣言することにより、ライブラリに自分自身を挿入できます。

ただし、partライブラリを宣言するファイル内の宣言と、ライブラリにpart of含まれるファイル内の宣言の両方を要求することで、Dart はこの状況を回避します。

于 2013-08-23T15:16:10.440 に答える