IT用語集 › プログラミング › デメテルの法則

デメテルの法則

プログラミング Svenska → 更新: 2026-10-21

オブジェクトは、自分自身・自分のフィールド・引数・自分で生成したオブジェクトのメソッドだけを呼ぶべきだ。a.b().c().d()のような「列車事故」型の連鎖は避ける。

1987年にノースイースタン大学で(Demeterプロジェクトのために)定式化された。流れるようなAPIやORMのビルダーなどの連鎖はしばしばこの法則を破るが、それは許容される。法則が問題にするのは、他のオブジェクトの内部構造をさらけ出すことだからだ。Userを受け取るメソッドがuser.getAddress().getCity().getZip()を呼ぶと、コードがオブジェクトグラフ全体に結びついてしまう。郵便番号だけを渡すほうがよい。

← 用語集に戻る