關(guān)于面試題潭枣,可能沒那么多時間來總結(jié)答案震放,有什么需要討論的地方歡迎大家指教宾毒。主要記錄一下準(zhǔn)備過程,和面試的一些總結(jié)澜搅,希望能幫助到正在面試或者將要面試的同學(xué)吧伍俘。
阿里
一面
1、介紹項目
2勉躺、在KVO中癌瘾,他是怎么知道監(jiān)聽的對象發(fā)生了變化?
3饵溅、字典的工作原理 妨退?怎100w個中是怎么快速去取value?
4、一個上線的項目咬荷,知道這個方法可能會出問題冠句,在不破壞改方法前提下,怎么搞幸乒?
5懦底、Block和函數(shù)指針的區(qū)別?
6罕扎、性能優(yōu)化
7聚唐、YYModel和AF源碼
8、如何自己設(shè)計json轉(zhuǎn)model
9腔召、架構(gòu)
他們的面試官好像都愛問一下底層的東西杆查,比如這次面試上來機會問我KVO的問題。
問題【1】臀蛛,看著好像很吊的樣子亲桦,仔細(xì)一樣不去思考,可能還真不是太了解浊仆,
問題【2】客峭,這個就是純純的數(shù)據(jù)結(jié)構(gòu)的問題了。
問題【3】抡柿,這個就是iOS的runTime的問題了桃笙,要只要isa,和一些swizzling技術(shù)
問題【4】沙绝,就是看你了解有多廣泛了搏明。
二面
1、淺拷貝和深拷貝的區(qū)別
2闪檬、Block的循環(huán)引用星著、如何解決、原理
3粗悯、Block和delegate的比較
4虚循、kvo的實現(xiàn)原理
5、Autorelease pool的實現(xiàn)原理
6样傍、消息轉(zhuǎn)發(fā)機制
7横缔、線程死鎖的四個條件
8、進程和線程的區(qū)別
9衫哥、持久化
10茎刚、事務(wù)的特征
中途還討論了Masonry的約束應(yīng)該寫在哪里,我說應(yīng)該寫在layoutSubViews撤逢,他說會調(diào)用多次膛锭,然后爭論了一會兒
三面
主要問了項目的一些東西 和給一些場景問我如何實現(xiàn)
自我介紹 介紹一些項目難點
主線程是相對于什么而言的
一張圖片的內(nèi)存占用大小是由什么決定的
索引的作用
索引的優(yōu)缺點
在數(shù)組中找最小的k個數(shù)
淘寶下拉加載更多如何優(yōu)化
淘寶頁面發(fā)送HTTP請求的過程
介紹一下MVVM
知道哪些設(shè)計模式
三面面試官主要就聊了一些具體場景問題和一些基礎(chǔ)粮坞,基礎(chǔ)應(yīng)該是沒太大問題。
更多:iOS面試題合集
另外附上一份各個好友收集的各大廠面試題+答案 ! 需要的可加 iOS技術(shù)探討群:624212887初狰,群文件直接獲取