這份清單為2022年準(zhǔn)備,iOS技術(shù)點+面試題分類

前言

喜歡的可以收藏,大家一起努力。

以下是小編收集總結(jié)的iOS技術(shù)點+面試題分類;看看你都會了嗎?希望自己能有目標(biāo)有計劃地準(zhǔn)備面試,后面我會逐個復(fù)習(xí)一下相應(yīng)的內(nèi)容。

  • 更多技術(shù)題合集:

iOS技術(shù)題大全(上)

iOS技術(shù)題大全(中)

iOS技術(shù)題大全(下)

iOS面試常問:

常問例題:

    1. 如何保證線程安全?死鎖是如何產(chǎn)生的?
    1. 線程之間是如何共享資源的?
    1. 從設(shè)計模式的角度分析Delegate、Notification、KVO的區(qū)別。
    1. NSNotification實現(xiàn)邏輯,子線程中給主線程發(fā)送通知,主線程是否會處理通知.
    1. 如何令自己所寫的對象具有拷貝功能?
    1. 自動釋放池在mrc和arc區(qū)別
    1. 進(jìn)程之間如何共享資源?
    1. 談?wù)剬τ赽lock理解,mrc和arc下有什么區(qū)別。
    1. TCP握手為什么是三次?TCP揮手為啥是四次呢?
    1. Http 和 Https 的區(qū)別?Https為什么更加安全?
    1. 解釋一下 三次握手 和 四次揮手?
    1. socket編程里面,select、poll、epoll的區(qū)別和特點?
    1. client和server之間TCP通信,雙方使用到的socket函數(shù)以及過程?
    1. TLS的加密過程?
    1. TLS握手時的隨機數(shù)有什么作用?
    1. 鏈表和數(shù)組的區(qū)別是什么?插入和查詢的時間復(fù)雜度分別是多少?
    1. Category(類別)、 Extension(擴(kuò)展)和繼承的區(qū)別。
    1. 為什么代理要用weak?代理的delegate和dataSource有什么區(qū)別?block和代理的區(qū)別?
    1. id和NSObject*的區(qū)別。
    1. 如何令自己所寫的對象具有拷貝功能?
    1. 使用系統(tǒng)的某些block api(如UIView的block版本寫動畫時),是否也考慮引用循環(huán)問題?
    1. static有什么作用?
    1. Swift 下的如何使用 KVC?
    1. Swift有哪些模式匹配?
    1. objc在向一個對象發(fā)送消息時,發(fā)生了什么?
    1. 靜態(tài)庫的原理是什么?你有沒有自己寫過靜態(tài)編譯庫,遇到了哪些問題?
    1. 不手動指定autoreleasepool的前提下,一個autorealese對象在什么時刻釋放?(比如在一個vc的viewDidLoad中創(chuàng)建)

難一點的

  • 設(shè)計一個progress bar解決方案,追問到 Core Graphic、CGPath、maskLayer。

  • 設(shè)計一個popup view被追問到 keyWindow、UIWindow的layer、UIView hierarchy。

  • 從設(shè)計模式的角度分析Delegate、Notification、KVO的區(qū)別。被追問到自己寫的library和開源的項目中用到哪些設(shè)計模式,為什么使用,有哪些好處和壞處,現(xiàn)在能否改進(jìn)。

  • 算是問題3的追問,設(shè)計一個方案來檢測KVO的同步異步問題。willChange和 didChange的不同點,然后被追問到有沒有其他地方也有類似情況,被追問到Core Data 中falut object。

  • Multithreading,什么時候采用Multithreading方案,以及理由。追問到系統(tǒng)還有哪些在后臺運行的thread,被追問到view life cycle、iOS6之后的不同以及內(nèi)存管理。

  • Multithreading中常常遇到的問題,追問到死鎖,優(yōu)先級翻轉(zhuǎn),線程池等。

  • runloop是來做什么的?runloop和線程有什么關(guān)系?主線程默認(rèn)開啟了runloop么?子線程呢?

  • 不手動指定autoreleasepool的前提下,一個autorealese對象在什么時刻釋放?(比如在一個vc的viewDidLoad中創(chuàng)建

  • 不手動指定autoreleasepool的前提下,一個autorealese對象在什么時刻釋放?(比如在一個vc的viewDidLoad中創(chuàng)建)

喜歡的可以收藏,大家一起努力。
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容