Re: [問題] Facade Pattern

看板OOAD作者 (向下一站出發)時間17年前 (2007/09/19 13:08), 編輯推噓4(400)
留言4則, 2人參與, 最新討論串3/5 (看更多)
※ 引述《H45 (!H45)》之銘言: : ※ 引述《hanta (向下一站出發)》之銘言: : : 不知道貴版可不可以問Design Pattern的問題 XD : : 如果不可以的話,版主就不用客氣,刪了它吧 ^^" : : The Facade object should be a fairly simple advocate or facilitator. It : : should not become an all-knowing oracle or "god" object. : : 我在某個網站上看到有關於Facade Pattern的討論,可是上面這段話實在不是很理解它 : : 到底在說什麼,所以想請問一下對Design Pattern有研究的大師可以給我解惑一下。 : : 感謝~! 嗯嗯 感謝大師的回答 不過對於這段話怎麼來,還是沒個頭緒,為何會牽扯到神之物件呢? The Facade object should be a fairly simple advocate or facilitator. It should not become an all-knowing oracle or "god" object. : 我不是大師,只是個管板的小僕。 : Facade Pattern 是任一個中大型的專案都會用到的一種 Design Pattern : 在把多個瑣碎的小物件拼裝成系統的一套流程時 : 會設定每個小物件的屬性,並且執行每個小物件的功能 : 當小物件多而雜的時候,這一連串的設定和功能會變得非常麻煩 : 而事實上我們真正關心的是: : 這一連串的小步驟到底對我們的「工作產品」有什麼樣的意義。 : 所以 Facade Pattern 把這些小步驟封裝在一個類別裡面 : 以一個或少數幾個「方法」來描述這整串步驟 : 每次我們想要做這一連串的小步驟,只要呼叫這個「方法」就可以達成目標了! : 舉例而言: : 某個 BBS 連線軟體上面的按鈕為「連線到 PTT」。 : 雖然只有一個命令,但是要完成它的話,要說還不太簡單 : 必須先建立 IP, Port, 連線到遠端機器之後使用 Telnet Protocal 進行溝通 : 再把收到的訊息畫到圖形使用者介面上,其中還牽扯到解析封包的內容。。。 : 為了簡化「連線到 PTT 」的程式碼 : 我們套用 Facade Pattern 把上述瑣碎的步驟封裝在一個類別中 : 下次要「連線到 PTT」的時候,就只要呼叫這個新類別的方法就可以了! : 附帶一提,Facade Pattern 很像在做抽象化 : 把不重要的事情隱藏起來,而去關心真正重要的部分。 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.128.193.146

09/20 00:46, , 1F
如果把所有小零件通通放到同一個類別內,就會產生神之物件
09/20 00:46, 1F

09/20 00:47, , 2F
「神」是無所不能的。但是我們並不想要造神。而只需要「一個」
09/20 00:47, 2F

09/20 00:48, , 3F
責任於一個類別內。
09/20 00:48, 3F

09/20 07:17, , 4F
感謝
09/20 07:17, 4F
文章代碼(AID): #16yAx1f- (OOAD)
討論串 (同標題文章)
本文引述了以下文章的的內容:
0
1
以下文章回應了本文
完整討論串 (本文為第 3 之 5 篇):
0
1
文章代碼(AID): #16yAx1f- (OOAD)