阿里巴巴2015年面試經歷

4月初的在線筆試過了之後預約了5月6號的面試。

一個月來斷斷續續補了前幾次筆試面試缺漏的內容,CoreData,內存管理,數據結構等內容。

這段時間給我的感覺就是經常在實戰打代碼,有時候還是要回來補補理論的東西,才能達到理論與實踐相結合的效果。

五一休息幾天之後,今天一大早準備了一下便出發。

到了面試酒店之後,安排到等待處等待,叫號之後直接進入大廳面試。

入座之後問我看了什麼書,回答:Object-C programing language,Program in iOS7,Effective Object-C 2.0

面試所問到的知識大概可以分爲幾個方面項目經驗,Object-C及iOS,數據結構與算法,操作系統。


項目:上了AppStore看了看我的發佈應用,在我手機上操作了一下我的應用,問在項目中我用了什麼設計模式,在項目中用了GCD嗎,怎麼實現不同屏幕分辨率的適配

打開了我的應用之後,點擊頁面居然發生了卡頓;

關於項目中的設計模式,我回答用了最基本的MVC模式並大概解釋了一下;GCD在tableVIew的數據加載中用輔助線程加載了圖片, 並做預加載;

不同分辨率的話,回答代碼上用VFL實現Autolayout,IB用了sizeclass,大概是這樣。


Object-C及iOS:在一個類中增加NSString 類的函數如何實現;觀察者模式用object-c怎麼實現;delegate在object-c中怎麼實現;新版Xcode有什麼變化;swift語言有什麼特性;include和import有什麼區別。

第一問,寫了個category基本解決;

第二問寫了一個Notification的post和addObsever,覺得回答得太簡單了;

第三問回答了在model裏面加載數據,利用委託通知viewController,其實正確的應該是定義一個protocol,再定義一個Delegate實現兩個類間的數據傳送,亦或者是嵌套類簡的數據回傳;

第四問只回答出了storyboard的操作更方便,其實還有playground及其他的功能我都沒答上來。

cocoa china 的介紹:http://www.cocoachina.com/ios/20140823/9441.html

第五問,include和import之前看一些面試題的時候看過,居然給忘了,悲劇。。。。


數據結構與算法:1.如何判斷鏈表是否爲循環鏈表;2.給出一個葉節點如何找到與其最接近的葉節點,就是經過的路徑最短的

第一題兩個指針一前一後跑搞定;

第二題想了一下沒有最好的解法,給出一個從葉節點出發遍歷的算法。


操作系統:1.進程間怎麼通信;2.怎麼解決死鎖;3.進程和線程的進程和線程的區別

第一題答了管道和socket,其實應該還有共享內存空間;

第二題直接給了中斷線程,囧~~ 

第三題回答進程是系統裏面程序運行的基本單位,一個進程可以有多個線程,無法回答完整,還是需要補漏。


面試之後,覺得對於簡歷上的東西真的要非常熟悉,否則面試官從簡歷上的信息題問題不會的話真是吃大虧,然後算法數據結構操作系統網絡數據庫這些基礎還是要熟知。

關於iOS開發,不僅要基礎的知識,語言的特性理解,對於一些官方新發布的特性也要謹記,比如swift,xcode開發工具等等的特性。


剛剛收到消息,今天有的同學已經進行二面了,而我一點消息沒收到。

不說了,該考慮去搬磚了,T T 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章