百度移動面試 iOS試題分享

2021-06-22 04:16:46 字數 1486 閱讀 3925

第一面

1、objective c runtime library:objective c的物件模型,block的底層實現結構,訊息傳送,訊息**,這些都需要背後c一層的描述,記憶體管理。

2、core data:中多執行緒中處理大量資料同步時的操作。

3、multithreading:什麼時候處理多執行緒,幾種方式,優缺點。

4、delegate, notification,kvo, other 優缺點

runtime有一點追問,category,method 的實現機制,class的載入過程。 

第二面

第一面問的主要是知識點。

第二面問主要考察的是設計解決方案的能力,另外輔助追問的方式,考察深度和廣度,回答過程中需要列出適合的具體例子,方案還需要細緻到具體的關鍵的函式名稱,方法。另外考察設計模式的理解,最後還考了演算法。

這裡記錄一些重要的問題:

1、設計乙個progress bar解決方案,追問到 core graphic、cgpath、masklayer。

2、設計乙個popup view被追問到 keywindow、uiwindow的layer、uiview hierarchy。

3、從設計模式的角度分析delegate、notification、kvo的區別。被追問到自己寫的library和開源的專案中用到哪些設計模式,為什麼使用,有哪些好處和壞處,現在能否改進。

4、算是問題3的追問,設計乙個方案來檢測kvo的同步非同步問題。willchange和 didchange的不同點,然後被追問到有沒有其他地方也有類似情況,被追問到core data 中****t object。

5、這個是問題4的追問,設計乙個kvo系統。

6、multithreading,什麼時候採用multithreading方案,以及理由。追問到系統還有哪些在後台執行的thread,被追問到view life cycle、ios6之後的不同以及記憶體管理。

7、multithreading中常常遇到的問題,追問到死鎖,優先順序翻轉,執行緒池等。

演算法考了2個。乙個是如何求2個集合的交集。另乙個是百億資料中查詢相同的數字以及出現的次數。

最後還補充了幾個小問題:

1、自己對可穿戴裝置的感受

2、自己如果進入這個team,自己準備做那方面的事情

3、為什麼創業,自己未來規劃

第三面

主要是考察精神層面的東西。

1、為什麼做windows mobile

2、為什麼改ios

4、為什麼iphone 可以成功,那些吸引你

評價1、選擇的時候都是經過深思熟慮的

2、有野心,wanna make a difference

百度前端面試題分享

到公司以後,直接技術面,沒有筆試 考官 自我介紹一下 我 巴拉巴拉 考官 你會什麼?我 巴拉巴拉,其中提到了物件導向 考官 那你寫乙個類吧 我就寫了乙個建構函式和原型物件,然後例項化,並進行了一番解釋 考官 如何實現兩個類的繼承 我 不是很清楚,回答了乙個extend方法,然後考官貌似不是很清楚ex...

百度面試題

有一根27厘公尺的細木桿,在第3厘公尺 7厘公尺 11厘公尺 17厘公尺 23厘公尺這五個位置上各有乙隻螞蟻。木桿很細,不能同時通過乙隻螞蟻。開始時,螞蟻的頭朝左還是朝右是任意的,它們只會朝前走或調頭,但不會後退。當任意兩隻螞蟻碰頭時,兩隻螞蟻會同時調頭朝反方向走。假設螞蟻們每秒鐘可以走一厘公尺的距...

百度面試題

一 選擇題 15分 共10題 1.任何乙個基於 比較 的內部排序的演算法,若對6個元素進行排序,則在最壞情況下所需的比較次數至少為 a 10 b 11 c 21 d 36 2.關係模型有三類完整性約束,定義外來鍵實現的是 完整性.a.實體完整性 b.參照完整性 c.使用者定義的完整性 d.實體完整性...