php設計模式之抽象原廠模式

來源:互聯網
上載者:User

標籤:

之前總結了一下原廠模式,其實準確地說是簡單 原廠模式,在它的基礎上再進行抽象就可以得到一種新的模式:抽象原廠模式。

專業一點的定義為:

抽象原廠模式(Abstact Factory)是一種常見的軟體設計模式。該模式為一個產品族提供了統一的建立介面。當需要這個產品族的某一系列的時候,可以為此系列的產品族建立一個具體的工廠類。

In a word:

抽象工廠可以看做是多個簡單工廠的集合。我們往往把一種簡單工廠看做只生產一類產品族群的工廠。

什麼時候用抽象原廠模式?當我們需要的產品(也就是對象)不止一種族群的時候,就可以使用該模式。下面給出uml圖,便於理解結構關係:

 

在原本的工廠類之上再抽象出一個基類(抽象類別),定義公用 介面以待實現。不同的產品族中的產品也抽象出一個基類,對產品功能特性進行規範。 

比如Linux 和windows系列產品族,各自有自己的產品。

Linux: 手機(安卓,還有ubuntu手機),電腦系統(redHat,ubuntu,centos等發行版),平板(安卓)。

windows:手機(lumia,wp手機),電腦系統(windows xp,7,8,8.1,10 or other),平板(surface)。

 (待續....)

php設計模式之抽象原廠模式

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.