阿里P5,二面

阿里P6
1.NSString占用多少內(nèi)存?
2.SD最大支持多少個(gè)下載數(shù)?
3.yykit如何異步渲染?
4.runtime動(dòng)態(tài)創(chuàng)建一個(gè)類,需要注意什么?
5.runloop和線程有和關(guān)系?
6.你平時(shí)做過(guò)什么有技術(shù)難點(diǎn)的東西,然后解決難點(diǎn)
7.你是如何學(xué)習(xí)iOS,看什么網(wǎng)站,列舉幾個(gè)國(guó)外的學(xué)習(xí)網(wǎng)站?
8.技術(shù)架構(gòu)如何搭建?
9.還有一個(gè)很長(zhǎng)字符串,你用什么算法搜索到abc的位置?
10.字符串如何預(yù)處理?
11.https和ssl在握手方向有什么區(qū)別?
12.還有,你平時(shí)很忙,怎么學(xué)習(xí)和積累技術(shù)
13.怎么防止別人動(dòng)態(tài)在你程序生成代碼
14.怎么防止反編譯
阿里-p6-一面
1.介紹下內(nèi)存的幾大區(qū)域?
2.你是如何組件化解耦的?
3.runtime如何通過(guò)selector找到對(duì)應(yīng)的IMP地址
4.runloop內(nèi)部實(shí)現(xiàn)邏輯?
5.你理解的多線程?
6.GCD執(zhí)行原理?
7.怎么防止別人反編譯你的app?
8.YYAsyncLayer如何異步繪制?
9.優(yōu)化你是從哪幾方面著手?
參考答案地址(學(xué)習(xí)視頻等資源也在公眾號(hào)內(nèi)):
http://url.cn/5YAhbxs
淘寶-P7
1.查找字符串算法
2數(shù)組匹配算法
3.代碼文件編譯生成過(guò)程,編譯和鏈接有什么區(qū)別,鏈接做了什么事情
4.用C語(yǔ)言實(shí)現(xiàn)一個(gè)通知流程
5.A B 線程執(zhí)行到一半去執(zhí)行C線程,用OC和C各自怎么實(shí)現(xiàn)。
6.對(duì)什么技術(shù)比較感興趣
7.tableview怎么優(yōu)化,優(yōu)化后還是感覺(jué)卡怎么辦
8.怎么定位到野指針的地方。如果還沒(méi)定位到,這個(gè)對(duì)象被提前釋放了,怎么知道該對(duì)象在什么地方釋放的
9.ARC的實(shí)現(xiàn)原理,什么情況下用MRC比ARC好
10.16進(jìn)制的FF + 2后 等于什么 有哪幾種情況?
餓了么面試題:
你了解哪些iOS底層知識(shí)
- automic一定是線程安全的嗎
- iOS中的消息傳遞是怎么一步一步實(shí)現(xiàn)的
- category和extension有什么區(qū)別
- iOS中的私有屬性如何設(shè)置
- 串行隊(duì)列和同步鎖兩者在保護(hù)線程安全上的性能對(duì)比
- 并行隊(duì)列是同時(shí)執(zhí)行的嗎
- iOS中有哪些鎖,你了解多少
- iOS中UIKit框架的架構(gòu)
- UIView和CALayer之間的關(guān)系
- UIView、CoreAnimation和CoreGraphics的關(guān)系
- 應(yīng)該知道SegmentFault,這個(gè)在iOS中是什么錯(cuò)誤,那StackOverFlow呢
- GCD、NSThread、NSOperation性能上有何區(qū)別
百度iOS面試題:
1.Delegate 、Notification和KVO比較各自的優(yōu)缺點(diǎn)
2.在一個(gè)UI的正中間實(shí)現(xiàn)一個(gè)正方形的紅色視圖有幾種方式?
3.手觸碰到屏幕的時(shí)候,響應(yīng)機(jī)制是怎樣的?第一響應(yīng)者是誰(shuí)?追問(wèn) UIView和UIResponse的關(guān)系是什么?
4。UIViewController的生命周期是什么?追問(wèn) UIViewController 只alloc而沒(méi)用到的時(shí)候,UIViewController 的view是否加載了?如果沒(méi)有加載那什么時(shí)候加載?
5.直接用UILabel和自己用DrawRect畫UILabel,哪個(gè)性能好?為什么?哪個(gè)占用的內(nèi)存少?為什么?
6.AFNetworking是否支持ipv6?
7.項(xiàng)目采用64位,為什么要用64位?怎么修改成64位?i386是什么?他們有什么關(guān)系?
8.iOS的應(yīng)用程序有幾種狀態(tài)?追問(wèn),退到后臺(tái)代碼是否可以執(zhí)行?雙擊home鍵,代碼是否可以執(zhí)行?
9.一般使用的圖標(biāo)內(nèi)存為多大?比如200×300的圖片,內(nèi)存應(yīng)該占用多少比較合理?
10.說(shuō)說(shuō)你對(duì)內(nèi)存泄漏的看法,追問(wèn),block為什么容易引起內(nèi)存泄漏?
11.[object copy]是淺拷貝還是深拷貝?為什么是淺拷貝?copy是實(shí)現(xiàn)了哪個(gè)協(xié)議?
12.Images.xcassets和直接用圖片有什么不一樣?
搜狗iOS面試題:
1.iOS應(yīng)用的文件目錄都是什么?緩存文件存在哪個(gè)文件里?它的上一層是什么?
2.SDWebImage圖片處理原理?
3.SDWebImage在iOS9 3dtouch下出現(xiàn)的問(wèn)題?
4.NSArray和NSMutableArray在Copy和MutableCopy下的內(nèi)存是怎樣的?
5.用戶下載一個(gè)圖片,圖片很大,需要分成很多份進(jìn)行下載,使用GCD應(yīng)該如何實(shí)現(xiàn)?使用什么隊(duì)列?
6.現(xiàn)有兩個(gè)人和一張桌子,兩個(gè)人依次在桌子上放硬幣,硬幣不能疊放、立著,若一方找不到放的位置則失敗。若你在玩這個(gè)游戲,設(shè)計(jì)一個(gè)算法必贏。
7.現(xiàn)有n個(gè)物品和一個(gè)體積為V的包,每件物品的體積是ci,價(jià)格是wi,現(xiàn)在請(qǐng)你往包中放,每件物品只能放一次,怎么放能讓包的價(jià)格最大。
大公司面試題:
Android系統(tǒng)為什么會(huì)設(shè)計(jì)ContentProvider,進(jìn)程共享和線程安全問(wèn)題
RxJava的功能與原理實(shí)現(xiàn)
適配器模式,裝飾者模式,外觀模式的異同?
靜態(tài)內(nèi)部類的設(shè)計(jì)意圖。
多線程:怎么用、有什么問(wèn)題要注意;Android線程有沒(méi)有上限,然后提到線程池的上限
點(diǎn)擊事件被攔截,但是想傳到下面的view,如何操作?
Android中進(jìn)程內(nèi)存的分配,能不能自己分配定額內(nèi)存
序列化的作用,以及 Android 兩種序列化的區(qū)別。
前臺(tái)切換到后臺(tái),然后再回到前臺(tái),Activity生命周期回調(diào)方法。彈出Dialog,生命值周期回調(diào)方法。
1.使用了第三方庫(kù), 有看他們是怎么實(shí)現(xiàn)的嗎?
2.強(qiáng)連通量算法了解嘛?
3.遇到tableView卡頓嘛?會(huì)造成卡頓的原因大致有哪些?
4.M、V、C相互通訊規(guī)則你知道的有哪些?
5.NStimer準(zhǔn)嗎?談?wù)勀愕目捶??如果不?zhǔn)該怎樣實(shí)現(xiàn)一個(gè)精確的NSTimer?
http://mp.weixin.qq.com/s?__biz=MzUyNDM5ODI3OQ==&mid=2247483768&idx=1&sn=9e446324ffc993f84c76997936ba23f5&chksm=fa2cbad0cd5b33c6fafedda91c279eb4a5431a0dafc87161953862ece4952c8f1c0312c68ffd&mpshare=1&scene=23&srcid=1109YKC3lrYF5a3jUsLkItxU#rd