觀察者是一種行為設(shè)計(jì)模式, 允許一個(gè)對象將其狀態(tài)的改變通知其他對象。觀察者模式在iOS里有現(xiàn)成的方案一個(gè)是KVO,一個(gè)是通知中心。但是swift...
裝飾模式是一種結(jié)構(gòu)型設(shè)計(jì)模式, 允許你通過將對象放入包含行為的特殊封裝對象中來為原對象綁定新的行為。 裝飾器模式在別的語言里搞的云里霧里,在sw...
橋接模式是一種結(jié)構(gòu)型設(shè)計(jì)模式, 可將一個(gè)大類或一系列緊密相關(guān)的類拆分為抽象和實(shí)現(xiàn)兩個(gè)獨(dú)立的層次結(jié)構(gòu), 從而能在開發(fā)時(shí)分別使用。 我們定義一個(gè)抽象...
適配器模式是一種結(jié)構(gòu)型設(shè)計(jì)模式, 它能使接口不兼容的對象能夠相互合作。現(xiàn)實(shí)生活中很多適配器模式的例子,比如MacBook的電源適配器,把220V...
工廠方法是一種創(chuàng)建型設(shè)計(jì)模式,其在父類中提供一個(gè)創(chuàng)建對象的接口,允許子類決定實(shí)例化對象的類型。 現(xiàn)在我們來定一個(gè)抽象產(chǎn)品類: 一個(gè)動物抽象類,里...
外觀模式是一種結(jié)構(gòu)型設(shè)計(jì)模式, 能為程序庫、 框架或其他復(fù)雜類提供一個(gè)簡單的接口。外觀模式在現(xiàn)實(shí)生活中有很多例子,比如買火車票的黃牛,二手房的中...
單例模式是一種創(chuàng)建型設(shè)計(jì)模式, 讓你能夠保證一個(gè)類只有一個(gè)實(shí)例, 并提供一個(gè)訪問該實(shí)例的全局節(jié)點(diǎn)。iOS里有很多單例模式的存在: UIAppli...
責(zé)任鏈模式是一種行為設(shè)計(jì)模式, 允許你將請求沿著處理者鏈進(jìn)行發(fā)送。 收到請求后, 每個(gè)處理者均可對請求進(jìn)行處理, 或?qū)⑵鋫鬟f給鏈上的下個(gè)處理者。...
模板方法模式:在超類中定義了一個(gè)算法的框架, 允許子類在不修改結(jié)構(gòu)的情況下重寫算法的特定步驟?,F(xiàn)在有個(gè)訂單要處理,我們定義超類: 超類里定義了處...