- 相關推薦
設計模式 面試題
近幾年來,設計模式試題已廣泛出現在一些IT企業(包括一些巨牛型企業)的面試和筆試題中,從本文開始我將通過幾篇文章來介紹一下一些已出現過的設計模式面試和筆試題,歡迎大家討論。
某房地產公司欲開發一套房產信息管理系統,根據如下描述選擇合適的設計模式進行設計:
(1) 該公司有多種房型,如公寓、別墅等,在將來可能會增加新的房型;
(2) 銷售人員每售出一套房子,主管將收到相應的銷售消息。
參考解答:【個人觀點】
對于描述(1)可以選擇使用工廠方法模式,對于描述(2)可以選擇使用觀察者模式,本題參考類圖如下所示:
在類圖中,HouseCreator是抽象房屋工廠類,其子類VilladomCreator用于創建別墅Villadom,子類ApartmentCreator用于創建公寓Apartment,Villadom和Apartment都是抽象房屋類House的子類,此時應用了工廠方法模式,如果增加新類型的房屋,只需對應增加新的房屋工廠類即可,原有代碼無須做任何修改;House類同時作為抽象觀察目標,子類Villadom和Apartment作為具體觀察目標,相關人員類Stakeholder作為抽象觀察者,其子類Manager(主管)作為具體觀察者,實現了在Stakeholder中聲明的response()方法,當房屋售出時,房屋的狀態status將發生變化,在setStatus()方法中調用觀察者的response()方法,即主管將收到相應消息,此時應用了觀察者模式。
[設計模式 面試題]
【設計模式 面試題】相關文章:
iOS開發、設計面試題08-16
面試官是如何設計面試題的08-29
平面設計師面試題目07-24
平面設計師面試題目10-19
平面設計師面試題目10-08
100個iOS開發設計面試題大全(2)06-26
課堂教學設計的主要模式(詳解)(2)06-06
騰訊上海校招交互設計面試題09-14
iOS開發設計程序員面試題(2)09-30
經典面試題06-20