網(wǎng)上已經(jīng)有很多針對各種知識點(diǎn)的面試題,面試時(shí)有些人未必真正理解也能通過背題看上去很懂蛮穿。我自己總結(jié)了4道面試題豌拙,好快速的判斷這個(gè)人是否是一個(gè)合格的工程師,歡迎大家點(diǎn)評碴犬。
1.struct和class的區(qū)別
在面試之前你覺得所有的計(jì)算機(jī)專業(yè)的學(xué)生都應(yīng)該能答的上來絮宁,事實(shí)是我面的人里有超過三分一沒有答上來。
有時(shí)我還會順便問下swift里的array是什么類型服协,在大量復(fù)制時(shí)會不會有性能問題绍昂。
2.介紹一下觀察者模式
也許有些人已經(jīng)覺得設(shè)計(jì)模式有些過時(shí),沒有整本讀過偿荷。就算如此iOS里常用的幾個(gè)設(shè)計(jì)模式我覺得總要了解吧窘游。
這里如果說NSNotificationCenter怎么使用的就直接pass。
這個(gè)回答應(yīng)該包括三個(gè)部分:首先這個(gè)設(shè)計(jì)模式為了解決什么問題跳纳,其次通過什么方案來解決张峰,最后才是當(dāng)前體系下的具體實(shí)現(xiàn)方案。
3.在一個(gè)https連接的網(wǎng)站里棒旗,輸入賬號密碼點(diǎn)擊登錄后喘批,到服務(wù)器返回這個(gè)請求前,中間經(jīng)歷了什么
這題是在其他看到的铣揉,本來題目是登錄gmail的時(shí)候饶深,但是國內(nèi)也許有些人不知道Google很早就全站https了,所以這里特別指出是https的連接逛拱。
這里面可以談的東西就很多了敌厘,TCP/IP下有非常多的協(xié)議。不需要什么都能說的清楚朽合,但是對于整個(gè)網(wǎng)絡(luò)連接模型的理解可以看出基本功俱两。
4.在一個(gè)app中間有一個(gè)button饱狂,在你手觸摸屏幕點(diǎn)擊后,到這個(gè)button收到點(diǎn)擊事件宪彩,中間發(fā)生了什么
runloop和響應(yīng)鏈需要說的清楚休讳。
有時(shí)還會順便問問UIResponder、UIControl尿孔、UIView的關(guān)系俊柔。
這4個(gè)問題只是為了一上來可以快速篩選掉不合適的程序員,畢竟有的人只需要幾分鐘就知道他不合適了活合,好節(jié)省時(shí)間雏婶。
中午吃飯我和一個(gè)資深的同事說這些題目,我說白指,一個(gè)15k+的程序員我覺得一定能答的上這四題留晚。他說你也太樂觀了,按現(xiàn)在這行情他覺得恐怕要20k的程序員才能答的上來告嘲。
歡迎關(guān)注我的微博:@沒故事的卓同學(xué)
@故胤道長寫的回答错维,僅供參考:答卓同學(xué)的iOS面試題