PHPフレームワークとしてCodeIginterを使用しています。私は以下の状況を説明しています:-
次の名前の3つのモデルが必要です:-
- User_Model
- Relation_Model
- Reminder_Model
ここで状況を考えてみましょう。
User_Modelすでに書かれています。私は書いていRelation_Modelます。私の友人はを書きますReminder_Model。
Relation_ModelUser_Modelその方法の1つで、インスタンス化し、それを使用します。getRelation($userID)
Reminder_ModelまたUser_Model、その機能のために1つのインスタンスをインスタンス化します。
Reminder_ModelgetRelationRelation_Modelのメソッドを呼び出す必要があります。
したがって、のインスタンスは少なくとも2つ必要ですUser_Model。1つはRelation_Model、もう1つはReminder_Model。
問題は、私のインスタンスが私の友人のクラスのインスタンスに干渉しないように、内部をどのように確認するかです。 Relation_ModelUser_ModelUser_ModelReminder_Model
つまり、コーディングするためReminder_Modelに、私の友人はRelation_Model、そのメソッドの1つを使用するためだけに、の内部知識を持っているべきではありませんgetRelation。
これの必要性を知りたい場合は、次のように言います。Reminder_Modelは、ログインしたユーザー(user-Aなど)のモデルをロードします。Relation_Modelは、user-Aのチームのメンバーであるユーザーのモデルと連携します。