第30章へようこそ。
ここまでの章では、型、所有権、参照、コレクションといった個々の仕組みを扱ってきました。
これらを使ってプログラムを実際に組み立てると、コードは大きくなる。
大きくなったコードを「どう配置し、何を外に見せ、どう参照するか」を決めるのが、モジュールシステムの役割です。
Rustのモジュールシステムには3つの構文があります。
モジュール宣言、public指定、use宣言の3つです。
ソースコード上では、moduleを3文字に略してエム・オー・ディーと綴るのがモジュール宣言、
publicを3文字に略してピー・ユー・ビーと綴るのがpublic指定、
useをそのままユー・エス・イーと綴るのがuse宣言です。
本章では、この3つの構文をそれぞれモジュール宣言、public指定、use宣言という名前で呼んでいきます。
モジュール宣言は名前空間を組み立てる。
public指定は何を外から見えるかを選ぶ。
use宣言は別の場所の名前を短く参照するためにスコープに持ち込む。
それぞれの機能は単純で、1文ずつで言い切れる。
3つが別々の軸を扱うために、別々の構文として分かれている。
今日扱うのは、それぞれが何をしているかと、3つを別々の軸として読むことが何を整理するか。
構造の軸、境界の軸、名前の軸。この3つの分けで章を進めます。