iOS面試題及答案

1、設計模式是什麼? 你知道哪些設計模式,並簡要敘述?

設計模式是一種編碼經驗,就是用比較成熟的邏輯去處理某一種類型的事情。
1). MVC模式:Model View Control,把模型 視圖 控制器 層進行解耦合編寫。
2). MVVM模式:Model View ViewModel 把模型 視圖 業務邏輯 層進行解耦和編寫。
3). 單例模式:通過static關鍵詞,聲明全局變量。在整個進程運行期間只會被賦值一次。
4). 觀察者模式:KVO是典型的通知模式,觀察某個屬性的狀態,狀態發生變化時通知觀察者。
5). 委託模式:代理+協議的組合。實現1對1的反向傳值操作。
6). 工廠模式:通過一個類方法,批量的根據已有模板生產對象。

2、MVC 和 MVVM 的區別

1). MVVM是對胖模型進行的拆分,其本質是給控制器減負,將一些弱業務邏輯放到VM中去處理。
2). MVC是一切設計的基礎,所有新的設計模式都是基於MVC進行的改進。

3、#import跟 #include 有什麼區別,@class呢,#import<> 跟 #import””有什麼區別?

答:
1). #import是Objective-C導入頭文件的關鍵字,#include是C/C++導入頭文件的關鍵字,使用#import頭文件會自動只導入一次,不會重複導入。
2). @class告訴編譯器某個類的聲明,當執行時,纔去查看類的實現文件,可以解決頭文件的相互包含。
3). #import<>用來包含系統的頭文件,#import””用來包含用戶頭文件。

 

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章