今年読んだ本『オブジェクト設計スタイルガイド』は、実用的で有効な設計スタイルが網羅的に紹介されていてとても良い本です。自分の最近の業務のプログラミングでも、紹介されている設計スタイルを採用しています。
簡単に実践できる設計スタイルを紹介してみたいと思います。
この本に出てくるサンプルコードは、PHPのようですがPHPではありません。以下のような幾つかの点でPHPではない架空の言語で書かれています。
- 変数の
$が無い - メソッド呼び出しの
->が.になっている
これは、PHPコードを見難いと感じる人に配慮しているのかもしれません。しかし普通にjson_encodeのようなPHP特有の関数が出てきたりするので、完全にPHPを前提にして構成されていると思います。(個人的にはPHPで書いてくれた方が嬉しかったです)
簡単な指針をいくつか紹介してみました。他にもオブジェクトを使うさまざまな場面での指針が沢山示されています。 もちろん、全ての指針に準拠しなければならないという強制的なものではありません。自分の考え方と合わない指針もあるかもしれません。それぞれの指針の意図するあるべき姿を考えてみることで、オブジェクト設計で考慮すべきポイントを学ぶことができる、多くのPHPerにお勧めの本です。
docker compose build
docker compose run --rm php_cli bashcomposer installcomposer test