小A:“什麼情況下,應當使用原型模式?”
大B:“1、當一個系統應該獨立於它的產品建立,構成和表示時;2、當要例項化的類是在執行時刻指定時,例如,透過動態裝載;3、為了避免建立一個與產品類層次平行的工廠類層次時;4、當一個類的例項只能有幾個不同狀態組合中的一種時。建立相應數目的原型並克隆它們可能比每次用合適的狀態手工例項化該類更方便一些。原型模式同工廠模式,同樣對客戶隱藏了物件的建立工作,但是,與透過對一個類進行例項化來構造新物件不同的是,原型模式是透過複製一個現有物件生成新物件的,達到了‘隔離類物件的使用者和具體型別(易變類)之間的耦合關係’的目的。”