近期(2016.1-2)筆試面試總結-iOS

前言:

我14年畢業,做iOS開發1年左右,基本屬于沒人帶散養的,完成了兩個項目,中間有段時間沒工作在考研,去年年底離職,找工作目前大概一個月,面試了挺多公司,大多是初中級崗位,相關筆試面試情況整理下,希望對自己做個總結,也希望能幫助到需要的人。

面試的公司有滴滴出行、face++、掌閱科技、博彥科技微軟事業部、36Kr、途游游戲、嗨學網等,我每面完一家公司都會記錄下筆試面試內容,出于對公司的尊重,我不能對應每個公司說出筆試面試題,但我會總結下,以下全是我遇到的:

基礎篇:

1、進程、線程的區別?
2、“三次握手”是什么?具體細節,連接釋放時需要幾次“握手”,說出大概過程。
3、TCP、UDP協議的區別?計算機網絡分幾層,以及TCP、Http協議各自工作在哪一層及相關細節。
4、手寫代碼實現冒泡排序、手寫代碼實現怎么反轉一個數組,各種常見排序算法的時間復雜度、空間復雜度。
5、常見的數據結構,數組、鏈表的區別及各自優缺點,二叉樹遍歷,平衡二叉樹,哈希表(Key-Value)。
6、一些有趣的筆試題,寫出偽代碼,多用到遞歸。

iOS開發篇:

1、Objective-c中@property屬性的區別和各自應用場景,比如@property(nonatomic,strong),什么時候用strong、weak、assign等。
2、怎么實現一個單例?
3、ViewController生命周期、app生命周期(問的很細)。
4、多線程編程、block的使用。
5、很多app主界面會有滾動視圖,說下實現思路。
6、怎么實現下拉刷新、上拉加載?
7、UITableView的cell重用機制。
8、熟悉常用控件的繼承關系,如說下UIButton的父類一直到NSObject,
9、常用設計模式有哪些,說說對MVC的理解。
10、內存管理(內容太多,不好寫)
11、NSNotification的作用。

其他:

多是問產品模塊有哪些、怎么分工,平常學習iOS的方法,工作時間外在iOS方面做了哪些事,畢業5年的職業發展規劃。

總結:

這段時間的面試其實很虐心,很多公司崗位要求中高級,要求獨立完成開發,碰了不少壁,收獲也是有的。遇到了幾個不錯的面試官,很直接的指出我的缺點,提了不少建議。

我目前的感受是,作為初級選手,要把計算機基礎搞扎實,也就是網絡、操作系統、算法與數據結構這些課程上的,尤其是Objective-c相關語法。現在網上太多代碼、框架,很多東西我們直接能拿來用,我覺得并不是件好事,盡量去理解嘗試自己寫出來。

希望自己在iOS開發上能快速進步,也希望寫的這些面試經驗能幫到需要的人。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容