物件建立模式和類建立模式的區別

stepbystep發表於2004-03-24

GOF把Factory method歸為類的建立模式,把Abstract Factory歸為物件的建立模式。類的建立模式是把物件的建立推遲到子累,而物件的建立模式是把物件的建立委託給其他物件。但是在我看來,Factory method只不過是Abstract Factory的一種特殊情況,如果只有一個產品等級結構,就應該是factory method,多個平行的產品等級結構,就應該用abstract factory.也就是說 abstract factory如果讓他來處理只有一個產品等級結構的情況,它就退化成了一個factory method.

但是gof把它們歸為不同範圍的建立模式,請問它們的區別在哪裡?為什麼這麼劃分?

相關文章