外觀模式-引導(dǎo)篇及原理
目前創(chuàng)新互聯(lián)建站已為成百上千家的企業(yè)提供了網(wǎng)站建設(shè)、域名、雅安服務(wù)器托管、網(wǎng)站托管維護、企業(yè)網(wǎng)站設(shè)計、惠農(nóng)網(wǎng)站維護等服務(wù),公司將堅持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長,共同發(fā)展。來看看司小司的新項目-家庭影院控制接口項目
家庭影院設(shè)備:
DVD播放器、投影儀、自動屏幕、環(huán)繞立體聲、爆米花機等等。
對于的類對象:DVDPlayer、Projector、Stereo、Popcorn、Screen、TheaterLights etc...
類圖如下:
我們知道,這些設(shè)備需要遙控器,同時這些設(shè)備都對外提供了接口。如果一個設(shè)備一個遙控器是不是很麻煩?,F(xiàn)在需求是,為了方便省事。只需要一個設(shè)備來處理。
來源:凱哥Java(kaigejava)
我們先來看看傳統(tǒng)的控制接口設(shè)計,步驟如下圖:
看一場家庭影院,還這么多步驟。確實很麻煩。我們來分析:爆米花機可以看作是一個子系統(tǒng)、投影儀是一個子系統(tǒng)、音響可以看作是一個子系統(tǒng)等等。我們將各個設(shè)備都單獨的看作是一個子系統(tǒng),我們就會發(fā)現(xiàn),這些子系統(tǒng)或許存在著內(nèi)部關(guān)聯(lián)關(guān)系或者是需要統(tǒng)籌協(xié)調(diào)工作的。有沒有更好的解決方案呢?
司小司調(diào)研之后,決定使用外觀模式這種設(shè)計模來實現(xiàn)這種需求。我們先來看看外觀模式是什么。
我們可以將以上各個設(shè)備相識或者有關(guān)聯(lián)的操作放到一個方法中,然后對外在提供統(tǒng)一的一個對象接口。這樣,比如說,我們先要準(zhǔn)備:爆米花機開機、投影儀開機、屏幕自動放下這一組操作放到一個方法中。DVD碟片選擇、燈光調(diào)暗、播放DVD這一組操作放到一個方法中。關(guān)閉各種設(shè)備操作放到一個方法中。最后我們就得到了如下的類圖:
經(jīng)過上面分析,我們可以知道:
外觀模式:對外提供了一個統(tǒng)一的接口,來訪問子系統(tǒng)中一群功能相關(guān)接口。
外觀模式定義了一個高層接口,讓子系統(tǒng)更容易使用。
我們來看看代碼結(jié)構(gòu):
說明:
爆米花機、投影儀、屏幕等我們使用的都是單例模式。因為這些東西,一個家庭一個就可以了。所以這里就使用了單例模式來處理的。
凱哥個人博客:www.kaigejava.com
凱哥公眾號:凱哥Java(kaigejava)
在測試類中:
我們調(diào)用了準(zhǔn)備及播放功能。運行結(jié)果:
我們發(fā)現(xiàn),對外提供接口解耦提高了。
創(chuàng)新互聯(lián)www.cdcxhl.cn,專業(yè)提供香港、美國云服務(wù)器,動態(tài)BGP最優(yōu)骨干路由自動選擇,持續(xù)穩(wěn)定高效的網(wǎng)絡(luò)助力業(yè)務(wù)部署。公司持有工信部辦法的idc、isp許可證, 機房獨有T級流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確進行流量調(diào)度,確保服務(wù)器高可用性。佳節(jié)活動現(xiàn)已開啟,新人活動云服務(wù)器買多久送多久。
分享文章:設(shè)計模式之外觀模式-引導(dǎo)篇及原理-創(chuàng)新互聯(lián)
當(dāng)前鏈接:http://aaarwkj.com/article48/ddoghp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供全網(wǎng)營銷推廣、微信公眾號、虛擬主機、小程序開發(fā)、品牌網(wǎng)站設(shè)計、品牌網(wǎng)站制作
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容