[戻る]
日時 | 2020年1月11日 10:00 - 17:00 |
場所 | 川崎市教育文化会館 第3会議室 |
出席者(敬称略) | 高橋(智)、高橋(徹)、大部、今井、遠藤、石黒、平山、岩室(書記) |
p.59 先頭 (Platform modules and most application modules have ...) から。
⇒ 使用するライブラリと同じpackageに属すクラスを定義することで、自分のライブラリやアプリケーションコードから対象ライブラリのパッケージスコープ要素にアクセスするような手段は使えなくなる。
同じ名前のモジュールがモジュールパス内に複数ある場合はエラーになる。(異なるjarファイルでも、モジュールデスクリプタに記述したモジュール名を同じにすることはできる)
モジュールの命名指針 → パッケージ名の命名指針(reverse domain notation)と同様の指針が推奨されている。
モジュールに対するreadが無くても(requiresを指定してなくても)、そのモジュールに含まれるクラス/インターフェースを直接用いるのでなければ、そのモジュールがエクスポートしているパッケージをリフレクションでアクセス可能。
同一ディレクトリ内にある同名のモジュールはエラーになる。
これまで説明されてきた厳密なチェックに反する仕様なのではないか? ⇒ 著者は「unfotunate」と書いており、良い仕様とは考えていないと思われる。
同じライブラリの新旧両方をを含めた場合、従来のクラスパスだと新旧のクラスが混じる可能性があるが、モジュールパスだと新旧のどちらか一方しか使われないという利点はあるのではないか。