下面給出了4種設(shè)計模式的作用。
外觀(Facade):為子系統(tǒng)中的一組功能調(diào)用提供一個一致的接口,這個接口使得這一子系統(tǒng)更加容易使用;
裝飾(Decorate):當不能采用生成子類的方法進行擴充時,動態(tài)地給一個對象添加一些額外的功能;
單件(Singleton):保證一個類僅有一個實例,并提供一個訪問它的全局訪問點;
模板方法(Template Method):在方法中定義算法的框架,而將算法中的一些操作步驟延遲到子類中實現(xiàn)。
請根據(jù)下面敘述的場景選用適當?shù)脑O(shè)計模式。若某面向?qū)ο笙到y(tǒng)中的某些類有且只有一個實例,那么采用 (1) 設(shè)計模式能夠有效達到該目的;該系統(tǒng)中的某子模塊需要為其他模塊提供訪問不同數(shù)據(jù)庫系統(tǒng)(Oracle、SQL Server、DB2 UDB等)的功能,這些數(shù)據(jù)庫系統(tǒng)提供的訪問接口有一定的差異,但訪問過程卻都是相同的,例如,先連接數(shù)據(jù)庫,再打開數(shù)據(jù)庫,最后對數(shù)據(jù)進行查詢, (2) 設(shè)計模式可抽象出相同的數(shù)據(jù)庫訪問過程;系統(tǒng)中的文本顯示類(TextView)和圖片顯示類(PictureView)都繼承了組件類(Component),分別顯示文本和圖片內(nèi)容,現(xiàn)需要構(gòu)造帶有滾動條、或者帶有黑色邊框、或者既有滾動條又有黑色邊框的文本顯示控件和圖片顯示控件,但希望最多只增加三個類,(3)設(shè)計模式可以實現(xiàn)該目的。
(1)A、外觀
B、裝飾
C、單件
D、模板方法
(2)A、外觀
B、裝飾
C、單件
D、模板方法
(3)A、外觀
B、裝飾
C、單件
D、模板方法