第一面,視頻面試
問的基礎的比較多,因為還涉及到音視頻的開發,所以音視頻方面的知識點也問了一些
常見的屬性修飾符有哪些,使用copy應該注意些什么
深拷貝和淺拷貝區別
atomic 真的安全么,加的鎖是哪種鎖
iOS中內存管理是怎么樣的
自動釋放池原理,本質
常見的內存泄漏有哪些
block 出現循環引用的原因
線程和runloop之間的關系是怎么樣的
GCD 中串行并行隊列,同步異步的區別
有遇到過死鎖么,怎么產生的
runtime查找方法的過程
runtime 是怎么實現weak置nil的
關聯對象是線程安全的么
isKindOf 和 isMemberOf 區別
iOS Class結構
load 和 initialize 區別
說一下kvo實現的原理,使用kvo需要注意什么,手動觸發應該怎么做
有多個分類實現同一個方法,最后會執行哪個
iOS 產生卡頓的原因,什么是離屏渲染
沙盒文件目錄
說一下從點擊屏幕開始到某個按鈕觸發中響應鏈傳遞機制,如果要更改響應范圍怎么做
常用的鎖有哪些,性能怎么樣
xcode從開始編譯到app出現第一個界面中之間進行了哪些工作(分成xcode編譯成功和app啟動講的)
音視頻開發的簡單流程
PCM 數據格式是怎么樣構成的
常見的音頻壓縮方式,優缺點
算法題:鏈表的反轉
有什么要問的么?
第二面,視頻面試
項目中哪個功能最能體現自己的技術實力?具體講一下
對mvvm,mvc的理解,項目中怎么體現的
有用過多線程技術么,在項目中怎么做的
iOS 單元測試簡單流程
查找算法的實現
對hash算法了解么,iOS中哪些地方用到了hash算法,hash沖突怎么解決
第三面,電話面試
項目中哪個功能最能體現自己的技術實力?具體講一下
常見的崩潰有哪些,遇到崩潰問題怎么查找解決,遇到無符號化的崩潰怎么處理
數據庫讀寫安全,表結構發生變化,怎么合理更新數據庫緩存
設計模式有哪些,在項目中怎么體現的
app性能優化(分別從cpu和gpu優化去講的)
除了oc,有學習別的語言么,一般是怎么學習的
為什么離職,離職原因說一下
第四面,視頻面試(不同的面試官)
為什么離職,為什么不考慮轉崗
項目中哪個功能最能體現自己的技術實力?具體講一下
選一個功能實現,講一下實現思路和方案,遇到問題是怎么解決的
為什么做iOS, 有看過iOS相關的書籍么
講一下https 數據發送過程
看過iOS相關的源碼實現么,realizeClass做了哪些, class_rw_t和class_ro_t 區別
手畫一下mvvm結構圖,講一下你的理解
不用臨時變量交換兩個int類型數(加減法,但要注意邊界值溢出問題,有符號 -231~231-1,無符號 0~2^32-1)
設計一個緩存機制需要注意哪些點(lru算法,線程讀寫安全)
寫一下lru算法(雙向鏈表+hash)
有什么要問的么?
第五面,電話面試
http1.1和2.0有什么區別,Keep-Alive模式
tcp長連接和短連接的區別
mvvm,mvp,mvc的區別
面向對象設計的六大設計原則是什么
紅黑樹有了解么
如何用兩個棧實現隊列功能
常見的鎖有哪些,實現奇偶數交叉打印
Ps:題集收錄于網絡,如有侵權,請聯系小編刪除;
文末推薦:iOS熱門面試文集