私はまだデザインパターンに頭を悩ませようとしています.2回目は、パターンの解決策を求めているように見える同じ問題に直面しています.
複数のアカウント タイプを持つアカウント システムがあります。レストラン、ホテル、service_provider、および消費者のアカウント タイプがあります。将来的にはビジネス アカウントの種類が増えると確信しています。もちろん、グローバル管理者アカウントもあります。
そこで気になるのは、アカウント種別の切り替えをどう実装するかということです。例えば。各アカウントには 1 つ以上のプロファイルがありますが、プロファイルはアカウントの種類によって異なります。複数のタイプのアカウント (ポリモーフィズムまたは継承) を処理するには、ここでどのようなクラス関係を使用する必要がありますか?
他のプロファイルが拡張する必要がある抽象的な基本プロファイル クラスが必要なようですが、それを実装する方法がわかりません (たとえば、プロファイル タイプとアカウント タイプの間の結合テーブル?)。
また、ファクトリ パターンを実装する機会のようにも感じますが、どうすればよいかわかりません。
アイデアはありますか?
*
*
提案されたいくつかの例を提供するために編集されました:
Account -> hasMany -> Users
Account -> belongsTo -> AccountType
Account -> hasOne -> Profile
プロファイルはアカウントの種類によって異なります。たとえば、レストラン タイプのアカウントにはメニューやワイン リストなどがあり、ホテル タイプのアカウントには部屋のタイプやアメニティがあり、消費者タイプのアカウントには個人的な好みがあります。 、母国など
問題は、これらの関係を最もよく実装する設計パターンは何かということでした。
それがより明確であることを願っています、ありがとう!