読者です 読者をやめる 読者になる 読者になる

週末にスポクラに行ったらPHPのとある部分のインターフェイス定義が良い感じに組み上がったので、脳内でコーディングして家に帰ったら実際にインプリメントしてみたり。
PHPは引数で型宣言出来なくてツカエネー、と思ってたら実は出来るらしいです。
ついでに、引数の型宣言にインターフェイスを指定すると、それをインプリメントしたクラスとそのサブクラスのオブジェクトにインターフェイスを継承したインターフェイスインプリメントしたオブジェクトを引数に出来るらしいです。一丁前に。
‥‥、まぁ、できなければインターフェイスの意味はありませんが‥‥


DB(もしくはエンティティ)からデータを引っ張り出してデータ転送用のオブジェクトに値を突っ込むクラスの場合、普通ならクラス間の依存を疎にするために、インターフェイスを引数の型にして、インプリメントしたクラスがどのプロパティを持っているかを取得してそれによって問い合わせを動的に作成して結果を該当のプロパティに突っ込む、んでしょうが、正直、今回のDB規模ではそんなことやってると絶対に割が合わないので、データ転送用のクラスは基本的に全部入りで問い合わせもSELECT部分は固定でイクかと。
(ただし、将来的に拡張できるように、クラスによって分岐できるような引数構成だけは作っときますが。そこだけなら手間じゃないし)