2011-09-23 4 views
0

내 사이트에는 두 가지 "유형"의 계정이 있습니다. 아주 다른 기능과 몇 가지 다른 필드가 있습니다. 그러나이 두 유형은 동일한 "기본 계정"필드 테이블을 공유합니다.여러 사용자 유형 - 상속 또는 구성?

User와 Company가 단순히 Account의 하위 항목 인 상속 디자인을 사용하는 것이 더 좋을지 또는 계정이 "사용자"또는 "사용자"중 하나를 가질 수있는 구성 디자인을 사용하는 것이 더 좋습니다. 회사 "(각자 자신의 기능을 가진) 객체가 있습니까?

참고 : 계정 테이블에는 모든 유형을 함께 연결하는 기본 ID가 들어 있으므로 각 사용자 또는 회사를 실제로 파생시키는 방법입니다.

는 또한

나는이 상당히 주관적인 질문입니다 얻을,하지만 난 거기에 일반적인 관행이 있다는 것을 알고있다. 따라서 올바른 일을 할 권리가있을 때, 즉 옳고 그른 대답을 할 수있는 때에 관한 아이디어가 있어야한다는 것은 의미가 있습니다.

+1

.. 또는 "사용자"는 계정 개체가 있습니다. 그것은 모두 사용 패턴에 따라 다릅니다 –

+0

이 질문에 대한 * 정확한 * 대답은 없습니다. –

+0

그렇다면 융통성있게 구성 할 수 있기 때문에 합성 방법이 가장 좋은 방법 일 수 있습니까? AKA - 사용자 개체를로드 한 다음 계정 개체를로드 할 수 있습니까? 반면 상속 모델에서는 (나는 생각합니다) User 객체를로드하고 Account에서 확장해야합니다. – johnnietheblack

답변

2

"사용자"및 "회사"가 일종의 "계정"(예 : UserAccount 및 CompanyAccount) 인 경우 상속을 사용하십시오.

반면에 사용자와 회사가 계정이있는 별개의 엔터티 인 경우 구성을 사용하십시오.

+0

사용자와 회사가 동일한 계정 정보로 로그인하는 경우입니다. 계정은 인증 수단이며, 사용자 및 회사는 해당 계정으로 확장되는 "권한"입니다. – johnnietheblack

+0

IndividualAccount vs. CorporateAccount와 같은 의미입니까? 항상 로그인하는 사람입니다, 네? –

+0

예 ... 사람이 로그인하지만 한 경우에는 자신을 대표하고 다른 한면에서는 회사를 나타냅니다. 저희 사이트의 "사용자"는 "회사"가 게시하는 내용 만 읽을 수 있습니다. 가지고있는 계정의 유형에 따라 사이트에서의 경험이 크게 달라집니다. – johnnietheblack