黄色网址大全免费-黄色网址你懂得-黄色网址你懂的-黄色网址有那些-免费超爽视频-免费大片黄国产在线观看

面試題首頁(yè) > 設(shè)計(jì)模式面試題

設(shè)計(jì)模式常見(jiàn)面試題

001什么是設(shè)計(jì)模式(Design pattern)?

設(shè)計(jì)模式(Design pattern)是一種思想,是一套被反復(fù)使用的代碼設(shè)計(jì)經(jīng)驗(yàn)總結(jié),專門(mén)用于解決特定場(chǎng)景的需求。它提供了在軟件開(kāi)發(fā)過(guò)程中面臨的一些問(wèn)題的最佳解決方案,使用設(shè)計(jì)模式是為了提高代碼的可重用性、讓代碼通俗易懂,增加代碼可靠性。

002面向?qū)ο缶幊讨校加心男┰O(shè)計(jì)原則?

開(kāi)閉原則:對(duì)擴(kuò)展開(kāi)放,對(duì)修改關(guān)閉。就是如果要修改原有的功能或者是擴(kuò)展功能,盡量去擴(kuò)展原有的代碼,而不是修改原來(lái)已有的代碼。
里氏替換原則:任何子類對(duì)象都應(yīng)該可以替換其派生的超類對(duì)象 。即,子類可以擴(kuò)展父類的功能,但不要修改父類原有的功能。 也就是說(shuō),當(dāng)一個(gè)子類繼承父類后,盡量不要去重寫(xiě)它原有的方法。
依賴轉(zhuǎn)置(依賴倒置)原則:要面向接口編程,不要面向?qū)崿F(xiàn)編程。兩個(gè)模塊交互時(shí),都訪問(wèn)各自接口,而不是具體的實(shí)現(xiàn)類。
單一職責(zé)原則:一個(gè)對(duì)象要專注于一種事情,不要讓它擔(dān)任太多責(zé)任。
接口隔離原則:一個(gè)接口盡量只包含用戶關(guān)心的內(nèi)容。就是一個(gè)接口不要太龐大。
迪米特法則:如果兩個(gè)軟件實(shí)體之間不是特別必要,盡量不要讓他們直接通信。而是找個(gè)第三方進(jìn)行轉(zhuǎn)發(fā),比如使用MQ(消息隊(duì)列)。
合成復(fù)用原則:如果在“組合/聚合”和“繼承”之間做抉擇時(shí),優(yōu)先選擇“組合/聚合”。

003設(shè)計(jì)模式的分類?

創(chuàng)建型模式:用于創(chuàng)建對(duì)象的設(shè)計(jì)模式。一般可以簡(jiǎn)化用戶創(chuàng)建對(duì)象的過(guò)程。其次可以降低耦合度,用戶不需要關(guān)心對(duì)象具體的創(chuàng)建過(guò)程。包含:?jiǎn)卫J健⒃湍P汀⒐S模式、建造者模式。
結(jié)構(gòu)型模型:組織對(duì)象之間的結(jié)構(gòu)。使其易于擴(kuò)展等。包括:代理模式、適配器模式、橋接模式、裝飾器模式、外觀模式、享元模式、組合模式。
行為模型:主要用于決定對(duì)象如何做出行為包括:模板方法模式、策略模式、命令模式、責(zé)任鏈、狀態(tài)模式、觀察者模式、中介者模式、迭代器模式、訪問(wèn)者模式、備忘錄模式、解釋器模式。

004設(shè)計(jì)模式的作用?

1)提高代碼復(fù)用率,降低開(kāi)發(fā)成本和周期;
2)提高代碼可維護(hù)性、可拓展性;
3)使代碼更加優(yōu)雅、更容易被他人理解。

005舉例說(shuō)明一個(gè)符合開(kāi)閉原則的設(shè)計(jì)模式的例子?

開(kāi)閉原則要求你的代碼對(duì)擴(kuò)展開(kāi)放,對(duì)修改關(guān)閉。這個(gè)意思就是說(shuō),如果你想增加一個(gè)新的功 能,你可以很容易的在不改變已測(cè)試過(guò)的代碼的前提下增加新的代碼。有好幾個(gè)設(shè)計(jì)模式是基 于開(kāi)閉原則的,如策略模式,如果你需要一個(gè)新的策略,只需要實(shí)現(xiàn)接口,增加配置,不需要 改變核心邏輯。一個(gè)正在工作的例子是 Collections.sort() 方法,這就是基于策略模式,遵循 開(kāi)閉原則的,你不需為新的對(duì)象修改 sort() 方法,你需要做的僅僅是實(shí)現(xiàn)你自己的 Comparator 接口。

006OOP中的組合、聚合和關(guān)聯(lián)有什么區(qū)別?

如果兩個(gè)對(duì)象彼此有關(guān)系,就說(shuō)他們是彼此相關(guān)聯(lián)的。組合和聚合是面向?qū)ο笾械膬煞N形式的 關(guān)聯(lián)。組合是一種比聚合更強(qiáng)力的關(guān)聯(lián)。組合中,一個(gè)對(duì)象是另一個(gè)的擁有者,而聚合則是指 一個(gè)對(duì)象使用另一個(gè)對(duì)象。如果對(duì)象 A 是由對(duì)象 B 組合的,則 A 不存在的話,B一定不存在, 但是如果 A 對(duì)象聚合了一個(gè)對(duì)象 B,則即使 A 不存在了,B 也可以單獨(dú)存在。

目錄

返回頂部
主站蜘蛛池模板: 欧美成人aaa大片 | 日本免费新一区二区三区 | 日本中文字幕永久在线 | 欧美日韩成人在线 | 无码中文资源在线播放 | 看免费黄色一级视频 | 我要看一级大片 | 黄色一级片免费播放 | 免费涩涩漫画大全 | 图片区 日韩 欧美 亚洲 | 日本免费大黄 | 国产三区视频 | 看看的在线视频国产 | www.亚洲精品 | 伊人精品影院一本到欧美 | 日韩伦理片在线观看光棍影院 | 一级乱理中文字幕韩国 | 在线免费观看视频黄 | 老司机午夜在线视频免费 | 高h猛烈做哭bl壮汉受欧美 | 2020年精品国产午夜福利在线 | 国产一区二区三区免费播放 | 天天色天天操天天 | 99精品视频在线观看免费专区 | 欧美在线视频精品 | 精品一区二区三区影院在线午夜 | 亚洲一区二区三 | 黄色一级片中国 | 在线精品国内外视频 | 成人日韩视频 | 男女性爽大片视频男女生活 | 黄视频免费在线 | 国产亚洲欧美日韩在线看片 | 你懂的在线播放 | 国内成人精品视频 | 一本一道dvd在线观看免费视频 | 黄色网一级片 | 一个人看的免费在线视频 | 超色视频 | 亚洲成年人免费网站 | 日韩欧美一区二区三区不卡在线 |