今天是我人生中的第一次面試,很慘烈,iOS小菜鳥起飛沒成功,還需努力加油~
【一面】
首先自我介紹,主要還是依據(jù)項(xiàng)目來(lái)問的~
1.iOS tableview是怎樣實(shí)現(xiàn)的?
2.如何提高tableview 的流暢性?
3.內(nèi)存語(yǔ)義(主要是我自己提到)有哪些語(yǔ)義、copy、為什么NSString 用copy?
copy 和mutablecopy的區(qū)別 ? ? ?深拷貝和淺拷貝
4.數(shù)組和鏈表的區(qū)別
5.atomic和nonatomic區(qū)別 ? 設(shè)置atomic后是否是線程安全,為什么?
6.使用http的過程 ?get post的區(qū)別
7.view和layer的區(qū)別
8.controller的生命周期
9.怎么畫的圖?
10.純代碼與xib的差異性在哪?
1.開發(fā)效率
純代碼編寫,界面越復(fù)雜,代碼量越大,復(fù)雜度也隨之上升;
使用xib,可以把界面布局相關(guān)的代碼,屬性設(shè)置的代碼,遷移到xib上,修改了什么馬上可以看到效果,所見即所得,界面開發(fā)速度快很多;使用xib中的autolayout,屏幕尺寸適配也方便得多。
2.可讀性
代碼越多,別人讀起來(lái)越費(fèi)勁,使用xib,界面層的代碼大量減少,可讀性極好
3.復(fù)用
純代碼可復(fù)用,xib比較難復(fù)用,有相同或相似界面,基本是復(fù)制一份過來(lái)修改,復(fù)用問題不大
4.版本管理
代碼的版本管理比較清晰成熟,大家也用得比較順。xib因?yàn)槠錇閤ml格式文件,可讀性比較差,多人同時(shí)修改同一個(gè)xib文件時(shí)會(huì)引起沖突,并且難以合并。所以,做好一個(gè)或一系列相關(guān)界面使用一個(gè)xib,避免多人同時(shí)修改一個(gè)xib引起沖突
5.性能
純代碼的界面加載速度、運(yùn)行速度是最快的,xib會(huì)稍微拉低性能,消耗更多內(nèi)存,但這對(duì)多數(shù)普通界面來(lái)說,沒有太大影響。需要極致的性能和速度的界面,才使用純代碼。
不管是純代碼還是xib,autolayout都不宜使用過多,超過60個(gè),會(huì)引起卡頓。
鏈接:http://www.itdecent.cn/p/35200d262e4b
【二面】也是關(guān)于項(xiàng)目的
1.藍(lán)牙怎么實(shí)現(xiàn)的?
2.單例怎么實(shí)現(xiàn)?
3.面向?qū)ο蟮?大原則 單一性……
4.為什么使用藍(lán)牙連接2個(gè)設(shè)備
5.有沒有了解過其它的連接設(shè)備的技術(shù)
6.ios的基本框架、模式?
止步于二面 ? ? ?其他的不記得啦