一 面試題
1 講講 MVC映跟、MVVM惠豺、MVP,以及你在項目里具體是怎么寫的徒仓?
- 詳情見下文及項目連接地址
2 你自己用過哪些設(shè)計模式腐碱?
- 創(chuàng)建型模式:
單例模式
、工廠方法模式
- 結(jié)構(gòu)型模式:
代理模式
掉弛、適配器模式
症见、組合模式
、裝飾模式
- 行為型模式:
觀察者模式
殃饿、命令模式
谋作、責(zé)任鏈模式
3 一般開始做一個項目,你的架構(gòu)是如何思考的乎芳?
- 詳情見下文及項目連接地址
二 何為架構(gòu)遵蚜?
- 架構(gòu)(Architecture)
- 軟件開發(fā)中的設(shè)計方案
- 類與類之間的關(guān)系、模塊與模塊之間的關(guān)系奈惑、客戶端與服務(wù)端的關(guān)系
- 經(jīng)常聽到的架構(gòu)名詞
-
MVC
吭净、MVP
、MVVM
肴甸、VIPER
寂殉、CDD
- 三層架構(gòu)、四層架構(gòu)
- ......
三 MVC
3.1MVC - Apple版
- 優(yōu)點:View原在、Model可以重復(fù)利用友扰,可以獨立使用
- 缺點:Controller的代碼過于臃腫
項目連接地址 - Architecture-MVC-Apple
3.2 MVC – 變種
- 優(yōu)點:對Controller進行瘦身,將View內(nèi)部的細節(jié)封裝起來了庶柿,外界不知道View內(nèi)部的具體實現(xiàn)
- 缺點:View依賴于Model
項目連接地址 - Architecture_MVC_Mutation
3.3 MVP
3.4 MVVM
項目連接地址 - Architecture_MVVM
項目連接地址 - Architecture_MVVM_2
四 層級結(jié)構(gòu)
五 設(shè)計模式
- 設(shè)計模式(
Design Pattern
)
- 是一套被反復(fù)使用焕檬、代碼設(shè)計經(jīng)驗的總結(jié)
- 使用設(shè)計模式的好處是:可重用代碼、讓代碼更容易被他人理解澳泵、保證代碼可靠性
- 一般與編程語言無關(guān),是一套比較成熟的編程思想
- 設(shè)計模式可以分為三大類
2.1 創(chuàng)建型模式:對象實例化的模式兼呵,用于解耦對象的實例化過程
- 單例模式兔辅、工廠方法模式腊敲,等等
2.2 結(jié)構(gòu)型模式:把類或?qū)ο蠼Y(jié)合在一起形成一個更大的結(jié)構(gòu)
- 代理模式、適配器模式维苔、組合模式碰辅、裝飾模式,等等
2.3 行為型模式:類或?qū)ο笾g如何交互介时,及劃分責(zé)任和算法
- 觀察者模式没宾、命令模式、責(zé)任鏈模式沸柔,等等
本文參考:
路飛_Luck (http://www.reibang.com/p/07f7b96bb03f)
以及借鑒MJ的教程視頻
非常感謝.
項目連接地址 - Architecture-MVC-Apple
項目連接地址 - Architecture_MVC_Mutation
項目連接地址 - Architecture-MVP
項目連接地址 - Architecture_MVVM
項目連接地址 - Architecture_MVVM_2