'Bazen' Miras Nasıl Kullanılmalı?

3 Cevap php

Ben (soyut) temel nesne nesne belirli türleri tarafından uzatıldı sınıf tablo devralma kullanan bir durum var.

Örneğin, Kişi -> User -> Prospect

Ancak, Prospect gibi bazı durumlarda, bazen Kullanıcı uzanır ve bazen de vermez. Ben ilişkiyi tersine çünkü Kullanıcı! == Prospect yüzden ben iyi bir nesne, bazen uzanır ve bazen değil senaryo bu tür işlemek için nasıl merak ediyorum.

Ayrıca, birisi bu durumda miras üzerinden kompozisyon önerecektir biliyorum, ama tüm özellikleri aynı şekilde erişilir ki ben ebeveyn işlevselliğini genişletmek ve üye özellikleri doldurulur yeteneği dayanarak ediyorum çünkü gerçekten mümkün değil.

3 Cevap

Inheritance in a database usually means the primary_key of the child table is a foreign_key to the parent table's primary_key.
But you mention the child could be an orphan. In this case the parent is an optional relation. (Usually solved by composition)

Siz iki sınıf, bir uzanan Kullanıcı ve yok bir tane oluşturabilirsiniz.

(Ama bu yapmak için çalışıyoruz ne için uygun olmayabilir)

Ben kokusunu Decorator Pattern.

Aşağıdaki Decorator Pattern en iyi bahis olacaktır. Kullandığınız dil ne emin, ama burada bir. NET uygulama için başka bir link değil.

http://www.dofactory.com/Patterns/PatternDecorator.aspx