iOS中級(jí)開(kāi)發(fā),鵝廠(chǎng)面試全程記錄!

感謝您的點(diǎn)擊,為表達(dá)誠(chéng)意,結(jié)尾有福利,嘿嘿!

騰訊社招iOS面試記錄

畢業(yè)好幾年了,上周發(fā)送了簡(jiǎn)歷給騰訊,參加了騰訊面試。具體部門(mén)這邊就不說(shuō)了。這次面試還是收獲到了很多。

一面電話(huà)面試:

面試官主要是針對(duì)iOS相關(guān)的基礎(chǔ)問(wèn)題。

  • 先簡(jiǎn)單自我介紹一下自己
  • 對(duì)mrc和arc的理解
  • 談?wù)剬?duì)自動(dòng)釋放池的理解
  • 自動(dòng)釋放池在mrc和arc區(qū)別
  • 多層自動(dòng)釋放池嵌套的對(duì)象在哪一層釋放
  • 對(duì)于block,理解,mrc和arc下有什么區(qū)別,使用注意事項(xiàng)
  • 對(duì)于深拷貝和淺拷貝的理解
  • 對(duì)于strong weak,atomic等等理解
  • weak原理
  • 如果屬性完全不加修飾詞入weak,atomic,系統(tǒng)會(huì)怎么處理
  • 簡(jiǎn)述下block的實(shí)現(xiàn)
  • 描述下IM系統(tǒng)如何保證消息不丟
  • IM數(shù)據(jù)庫(kù)如何設(shè)計(jì)表
  • C++引用和指針有什么區(qū)別
  • Http協(xié)議30x的錯(cuò)誤是什么
  • 談?wù)勀愣畆unloop得理解:由淺入深
  • 談?wù)剬?duì)多線(xiàn)程理解:由淺入深
  • 談?wù)刢ategory和extension區(qū)別,系統(tǒng)如何底層實(shí)現(xiàn)category
  • 談?wù)勏⑥D(zhuǎn)發(fā)機(jī)制實(shí)現(xiàn)
  • 談?wù)勈录憫?yīng)鏈,如何響應(yīng)view之外的事件
  • 界面性能優(yōu)化

整個(gè)面試大約1個(gè)半小時(shí)。整體上,回答的還算OK,自動(dòng)釋放池這塊,不夠清楚底層實(shí)現(xiàn)。另外atomic是在屬性沒(méi)有寫(xiě)的情況下系統(tǒng)默認(rèn)的。Block的底層實(shí)現(xiàn)也表達(dá)的不夠準(zhǔn)確。

一面之后過(guò)了幾天,給了二面通知。

二面視頻面試:

這次面試官相對(duì)于一面,更加側(cè)重于過(guò)往項(xiàng)目。

1.開(kāi)頭都是簡(jiǎn)短的自我介紹
2.聊一聊過(guò)往項(xiàng)目中你覺(jué)得收獲最大的一個(gè)模塊。

突然遇到這個(gè)問(wèn)題,心理是有點(diǎn)懵逼的呀,我不禁反想了一下,過(guò)去這些個(gè)項(xiàng)目,零零散散收獲了不少知識(shí)和經(jīng)驗(yàn),可是具體到哪一個(gè)模塊,完整的思考還是沒(méi)有過(guò)的。

答: 就說(shuō)了上個(gè)項(xiàng)目做類(lèi)似朋友圈的優(yōu)化思路,談到了空間換時(shí)間,緩存,渲染相關(guān)的技術(shù)點(diǎn)。

不得不驚嘆騰訊的面試官的邏輯條理,很快抓住了問(wèn)題的本質(zhì)。

需求痛點(diǎn):界面卡頓,體驗(yàn)不好

解決方案:探索的思路-》解決方案。

該模塊引申到的新話(huà)題還涉及到了增量更新,內(nèi)存緩存,本地緩存。

細(xì)節(jié)上還談到了富文本繪制,Coretext框架的使用,哎,說(shuō)來(lái)慚愧,上次使用coretext已經(jīng)是兩年前,連框架的核心API都已經(jīng)不記得了。再加上項(xiàng)目中使用的是YYLabel的開(kāi)源框架。最后只能憑借印象大概說(shuō)了下繪制的流程,其實(shí)面試官都是由淺入深的,如果這邊回答的不夠深入。那么后面也就不會(huì)有更深入的探討了。

  • 上個(gè)項(xiàng)目中存在視頻裁剪,錄制等功能。面試官對(duì)這塊有些興趣,就聊到了視頻裁剪的實(shí)現(xiàn),因?yàn)槲覀冺?xiàng)目中使用了ffmpeg做的裁剪功能。包括視頻下載,數(shù)據(jù)裁剪封裝,引申聊到了邊預(yù)覽邊裁剪,因?yàn)槲抑暗捻?xiàng)目并沒(méi)有做到預(yù)覽裁剪這塊。也就沒(méi)有深入聊下去了。期間簡(jiǎn)單談到了rstp協(xié)議,和HLS,rtmp等協(xié)議的對(duì)比,信令協(xié)議。雖然之前都有看過(guò)協(xié)議的大致實(shí)現(xiàn)和預(yù)覽,但是實(shí)際使用的是SDK,沒(méi)有實(shí)踐加持。這部分知識(shí)是很容易忘記的。大致聊了下總體差別。

  • 項(xiàng)目中有用到過(guò)DLNA投屏協(xié)議,說(shuō)來(lái)又是慚愧,自己完整做過(guò)的項(xiàng)目,過(guò)去了兩年,居然連流程,協(xié)議都只是零零散散的記起來(lái)了,很勉強(qiáng)的說(shuō)出了大概實(shí)現(xiàn)流程。知道最后才記起來(lái)是soap協(xié)議。當(dāng)初為了做這個(gè)可是研究了整整兩周的。面試官應(yīng)該也實(shí)現(xiàn)過(guò)這個(gè)需求,提到了視頻盒子斷線(xiàn)如何檢測(cè)做處理,什么原因?qū)е碌?。由于之前我們的產(chǎn)品需求比較簡(jiǎn)單,沒(méi)有特別完善。這里我也只能說(shuō)了大概。

  • 項(xiàng)目做過(guò)視頻播放需求,使用的AVPlayer框架(重點(diǎn)聊)面試官問(wèn)到,AVPlayer怎么監(jiān)聽(tīng)視頻緩沖狀態(tài)的,有哪幾種狀態(tài)。說(shuō)來(lái)又是慚愧,我只記得是KVO監(jiān)聽(tīng)的。具體的API已經(jīng)記不清了。
    接著面試官問(wèn)到這個(gè)需求遇到過(guò)哪些坑,怎么解決的。這個(gè)還真的有,首先是回調(diào)播放進(jìn)度在拖動(dòng)時(shí)候錯(cuò)亂,加載某些小視頻的適配,首幀出圖很慢。KVO的模式不靈活。緩沖進(jìn)度不受我們控制。短視頻可能直接迅速緩沖到底。還是之前的思路,需求痛點(diǎn)有了
    解決方案:探索的思路-》解決方案。
    不得不說(shuō)之前做的產(chǎn)品,都是需求驅(qū)動(dòng),解決了需求,很多時(shí)候就沒(méi)有極客精神,在深入的去探討。這塊真的是差!

發(fā)散問(wèn)到了:如果網(wǎng)絡(luò)不好,首幀出圖之后,如何優(yōu)化后續(xù)播放不卡頓 當(dāng)時(shí)已經(jīng)一臉懵逼了:就提到了可以適當(dāng)加大緩沖區(qū),等到足夠的I幀數(shù)據(jù)再開(kāi)始播放。

甚至連常規(guī)的碼率切換思路都沒(méi)想到。作為做音視頻相關(guān)產(chǎn)品的我太不應(yīng)該了。

  • 項(xiàng)目聊完了之后,又追問(wèn)了iOS的一些基礎(chǔ)問(wèn)題,屬性和成員變量區(qū)別,strong,atomic關(guān)鍵字,怎么理解runloop,runloop有幾種狀態(tài)等等。

  • 最后給出了一個(gè)非常有意思的算法題

有15個(gè)瓶子,其中最多有一瓶有毒,現(xiàn)在有四只老鼠,喝了有毒的水之后,第二天就會(huì)死。如何在第二天就可以判斷出哪個(gè)瓶子有毒
答:開(kāi)始我想到的是常規(guī)思路二分法,717,和面試官說(shuō)了,發(fā)現(xiàn)四只老鼠根本不夠,面試官友好的提示從老鼠面去想,這時(shí)候很快想到了一個(gè)老鼠有死和不死,也就0和1兩個(gè)狀態(tài),四只老鼠有16個(gè)組合,正好是足夠的。但是怎么分配瓶子,還沒(méi)想好,演算了一會(huì)兒,因?yàn)槊嬖嚬龠@邊時(shí)間有限,就說(shuō)思路是正確的。下面有興趣在看怎么分哈。面試就到此結(jié)束了。

二面持續(xù)了大約一個(gè)小時(shí)多一點(diǎn)。 二面自己感覺(jué)了很多欠缺,不夠深入。

面試總結(jié)

騰訊的面試官都非常的友好,邏輯性非常強(qiáng)。綜合素質(zhì)很高。面試過(guò)程中雖然針對(duì)的都是技術(shù)問(wèn)題,但是考察的包含了邏輯思維和產(chǎn)品思維以及溝通能力等綜合素質(zhì)。特別是二面。

認(rèn)識(shí)到了自己的不足:

  1. 不夠極客精神:還是需求驅(qū)動(dòng),之前的項(xiàng)目很多設(shè)計(jì)優(yōu)化因?yàn)閷?duì)產(chǎn)品的需求沒(méi)有那么高精度,遇到痛點(diǎn)的時(shí)候:僅僅做了初步的探討,沒(méi)有形成完整的閉環(huán),

往往是做了一定的優(yōu)化滿(mǎn)足了需求就結(jié)束整個(gè)過(guò)程了。這對(duì)于自我的成長(zhǎng)是很不好的。比如一個(gè)API了解到百分之70,沒(méi)有到100.

  1. 已有項(xiàng)目知識(shí)面深度不夠:項(xiàng)目中使用到了某些API,第一反應(yīng)是先去看Demo,完成需求,事實(shí)上例如僅僅是一個(gè)簡(jiǎn)單視頻播放,可能調(diào)用API很簡(jiǎn)單就可以做到,但是中間包含的卻很多,從網(wǎng)絡(luò)協(xié)議,到視頻解封裝,編解碼,渲染。音頻編解碼播放。

雖然每個(gè)環(huán)節(jié)都有去學(xué)習(xí),也都知道流程,但是這是不夠。要深入進(jìn)去。即使自己的項(xiàng)目沒(méi)有這塊實(shí)踐需求。也要自我驅(qū)動(dòng)去做。

3.自我總結(jié)欠缺:以前都是渾渾噩噩的快樂(lè)開(kāi)發(fā),也自學(xué)了不少。每個(gè)項(xiàng)目,或者每個(gè)自我學(xué)習(xí)的過(guò)程走一段,都應(yīng)該站在更高點(diǎn)去總結(jié)一下。

例如項(xiàng)目,要站在產(chǎn)品角度,自我學(xué)習(xí),要站在整體框架角度。否則學(xué)習(xí)到的東西一段時(shí)間不用就忘記了。高度也不夠。沒(méi)有完全消化透。感覺(jué)什么都懂一些,但是什么都差一點(diǎn)火候

怎么改善提高
  • 多寫(xiě)B(tài)log分享,東西會(huì)做,和能寫(xiě)出來(lái)是兩個(gè)層面。即使網(wǎng)上已經(jīng)有很多實(shí)現(xiàn)了。消化好之后,用自己的思路表達(dá)出來(lái),也有很大提高
  • 遇到問(wèn)題,無(wú)論是項(xiàng)目還是自己實(shí)踐,都要多問(wèn)幾個(gè)為什么,不能淺嘗輒止,站在產(chǎn)品角度。從原理層面理解問(wèn)題,最重要是給出解決問(wèn)題方案。demo不等于工程。
  • 階段性總結(jié)知識(shí)點(diǎn)。古語(yǔ): 學(xué)而時(shí)習(xí)之。

反思了很多:也清楚認(rèn)識(shí)到自己的一些優(yōu)點(diǎn),有技術(shù)熱情,愛(ài)好學(xué)習(xí)。很好的邏輯思維。溝通能力。相信只要堅(jiān)持努力。一定能獲得好的結(jié)果。也給自己打打氣。共勉之。

小編整理了一些比較知名大廠(chǎng)的面試題以及答案總結(jié),還有一些比較常用的學(xué)習(xí)資料,需要的可以自行下載的哦,QQ群號(hào):551346706!


最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀(guān)點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 227,837評(píng)論 6 531
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 98,196評(píng)論 3 414
  • 文/潘曉璐 我一進(jìn)店門(mén),熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人,你說(shuō)我怎么就攤上這事?!?“怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 175,688評(píng)論 0 373
  • 文/不壞的土叔 我叫張陵,是天一觀(guān)的道長(zhǎng)。 經(jīng)常有香客問(wèn)我,道長(zhǎng),這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 62,654評(píng)論 1 309
  • 正文 為了忘掉前任,我火速辦了婚禮,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 71,456評(píng)論 6 406
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 54,955評(píng)論 1 321
  • 那天,我揣著相機(jī)與錄音,去河邊找鬼。 笑死,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,044評(píng)論 3 440
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 42,195評(píng)論 0 287
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 48,725評(píng)論 1 333
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 40,608評(píng)論 3 354
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 42,802評(píng)論 1 369
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,318評(píng)論 5 358
  • 正文 年R本政府宣布,位于F島的核電站,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 44,048評(píng)論 3 347
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 34,422評(píng)論 0 26
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 35,673評(píng)論 1 281
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 51,424評(píng)論 3 390
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 47,762評(píng)論 2 372

推薦閱讀更多精彩內(nèi)容