溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

移動(dòng)互聯(lián)網(wǎng)下半場(chǎng) iOS 程序員面試真經(jīng),讓你進(jìn)入 BAT

發(fā)布時(shí)間:2020-08-01 12:12:16 來(lái)源:網(wǎng)絡(luò) 閱讀:264 作者:Mci7 欄目:移動(dòng)開(kāi)發(fā)

前言:

其實(shí)說(shuō)實(shí)話,作為程序員,最起碼得有 80% 的人都想進(jìn)入大公司工作,比如:BAT ,小米,滴滴,今日頭條,美團(tuán)等這樣的大公司或者移動(dòng)互聯(lián)網(wǎng)界的明星企業(yè)。

進(jìn)大公司的好處顯而易見(jiàn),福利好,待遇高,工作穩(wěn)定,不像很多創(chuàng)業(yè)小公司說(shuō)倒閉就倒閉,尤其是移動(dòng)互聯(lián)網(wǎng)進(jìn)入下半場(chǎng)之后,很多創(chuàng)業(yè)公司都相繼倒閉,而且移動(dòng)開(kāi)發(fā)者也越來(lái)越飽和,隨著程序員越來(lái)越多,自然就進(jìn)入了激烈競(jìng)爭(zhēng)的惡劣環(huán)境,優(yōu)勝劣汰的自然規(guī)律是不可逃避,也規(guī)避不了的。

據(jù) GitHub 統(tǒng)計(jì),就今年一年加入 GitHub 的中國(guó)程序員就有 70 萬(wàn),自己想想吧,競(jìng)爭(zhēng)得有多激烈。

即使有 20% 的程序員不想進(jìn)入大公司,也無(wú)非就是要么就是認(rèn)清了自己的現(xiàn)實(shí),自己并不是那么天賦異稟,也并不是那么熱愛(ài)編程,有自知之明的心態(tài),在個(gè)小公司干也挺好,倒閉了大不了再換,反正 BAT ,我也進(jìn)不去。

要么就是人家就是 BAT 的大神想出來(lái)創(chuàng)業(yè)當(dāng)移動(dòng)互聯(lián)界的創(chuàng)業(yè)家,想功成名就,即使創(chuàng)業(yè)失敗,我依然可以鶴立雞群,瀟灑回到 BAT 的世界,帥氣的依靠自己在業(yè)界的名聲依然能夠得到一份好的工作。

說(shuō)著說(shuō)著,好像有點(diǎn)?二八定律?的感覺(jué)。NO,上面的 80% 和 20% 是我自己的不完全統(tǒng)計(jì),不必當(dāng)真,舉個(gè)例子而已。

作為一個(gè)開(kāi)發(fā)者,有一個(gè)學(xué)習(xí)的氛圍跟一個(gè)交流圈子特別重要,這是一個(gè)我的iOS交流群:638302184,不管你是小白還是大牛歡迎入駐?,分享BAT,阿里面試題、面試經(jīng)驗(yàn),討論技術(shù),?大家一起交流學(xué)習(xí)成長(zhǎng)!希望幫助開(kāi)發(fā)者少走彎路。

點(diǎn)擊此處以下資料在群文件可自行下載

移動(dòng)互聯(lián)網(wǎng)下半場(chǎng) iOS 程序員面試真經(jīng),讓你進(jìn)入 BAT


面試準(zhǔn)則

關(guān)于面試這件事,我們得知道一個(gè)面試準(zhǔn)則,尤其是在移動(dòng)互聯(lián)網(wǎng)進(jìn)入下半場(chǎng)的今天。

最近很多朋友面試受挫,并不是說(shuō)技術(shù)有多差,但是就是很受打擊,因?yàn)樵谫Y本寒冬的今天,移動(dòng)互聯(lián)網(wǎng)的下半場(chǎng),程序員要想過(guò)上好日子,就得去大公司,現(xiàn)在已經(jīng)逐步進(jìn)入拼技術(shù)的時(shí)代了,所以技術(shù)依然越來(lái)越重要,這是在小公司無(wú)法體現(xiàn)和提升的。

而他們之所以受打擊是因?yàn)槠綍r(shí)做項(xiàng)目,做產(chǎn)品也可以獨(dú)立完成,甚至很好的完成,但是面試失敗的面試是基礎(chǔ)太差。所以,你在小公司確實(shí)可以能夠很好的掌握并做一個(gè)項(xiàng)目,但是大公司重視的是你的基礎(chǔ)啊。所以要清楚這么一個(gè)準(zhǔn)則:?面試,大公司重基礎(chǔ),小公司重能力?(這里的能力指:能不能馬上上手做一個(gè)項(xiàng)目的能力)。

進(jìn)一步解釋一下,為什么我在上面說(shuō):現(xiàn)在已經(jīng)逐步進(jìn)入拼技術(shù)的時(shí)代了?首先,移動(dòng)互聯(lián)網(wǎng)剛剛興起的前 10 年是一個(gè)高速發(fā)展,高速擴(kuò)張,野蠻收割的時(shí)代,就是不論技術(shù)好還是差,只要能夠馬上做出產(chǎn)品來(lái)就好技術(shù),就會(huì)通過(guò)營(yíng)銷,運(yùn)營(yíng),資本等手段獲得用戶,而獲得用戶,占領(lǐng)市場(chǎng)之后,就到了拼技術(shù),拼品質(zhì)的時(shí)代了。而現(xiàn)在移動(dòng)互聯(lián)網(wǎng)的下半場(chǎng)就是一個(gè)拼技術(shù)的時(shí)代了。

舉個(gè)簡(jiǎn)單的例子,微博,你做出來(lái)很容易,但是做好就很難了。明星出個(gè)軌,公布個(gè)戀情分分鐘就會(huì)讓你癱瘓,這不是產(chǎn)品,營(yíng)銷,資本能夠解決的問(wèn)題,這是技術(shù)才能夠解決的問(wèn)題。你會(huì)做微博不是能力,你能讓微博不癱瘓才是能力。

前幾天在知乎上看到一個(gè)問(wèn)題特別有意思,問(wèn):做一個(gè)微信很難么?有一個(gè)回答很對(duì),說(shuō):做一個(gè)微信,10 個(gè)人用不難,100 個(gè)不難,讓近 10 億的用戶用,就難了。此處省略一萬(wàn)字,這個(gè)話題要是聊透,其實(shí)能夠還寫(xiě)一篇文章。

面試準(zhǔn)備

我在前面說(shuō)了,面試慘不忍睹的就是由兩個(gè)問(wèn)題導(dǎo)致的,

一是,沒(méi)有認(rèn)清自己;

二是,沒(méi)有了解公司。

總結(jié)成一句話就是?準(zhǔn)備不足?。

我們既然了解了面試準(zhǔn)則,就應(yīng)該對(duì)癥下藥才行,這樣才不至于慘不忍睹。大公司既然重基礎(chǔ),那么面試前一定要好好學(xué)習(xí)和準(zhǔn)備一下這方面的知識(shí)。干什么事之前,一定要充分了解情況,古人說(shuō)的話,還是挺對(duì)的,畢竟是 2000 多年來(lái)總結(jié)出來(lái)的經(jīng)驗(yàn),面試就是戰(zhàn)場(chǎng),知己知彼才能百戰(zhàn)不殆。

舉個(gè)例子:小猿在一家創(chuàng)業(yè)公司從事了兩年的 iOS 開(kāi)發(fā),能夠獨(dú)立開(kāi)發(fā)一款軟件,技術(shù)還是可以的,效率挺高的,總能快速完成經(jīng)理交給的任務(wù),平時(shí)也會(huì)在 GitHub 上提交一些開(kāi)源代碼,分享了一些開(kāi)源庫(kù),star 數(shù)五六百,好的上千,熟悉使用常用網(wǎng)絡(luò)框架,還會(huì) MVP,MVVM 這樣的架構(gòu)。

感覺(jué)自己去 BAT 這樣的公司面試沒(méi)問(wèn)題,可是,還是被打擊到了。人家回復(fù)說(shuō):學(xué)習(xí)能力,開(kāi)源精神都挺好的,就是基礎(chǔ)太差??吹搅藛??會(huì)使用框架,封裝個(gè)簡(jiǎn)單的庫(kù),能夠做出產(chǎn)品來(lái)并不是多大的能力,做好是需要基礎(chǔ)的。

上面的例子的問(wèn)題,典型就是不了解自己,也不了解大公司的套路,準(zhǔn)備不足,所以才失敗的。平時(shí)學(xué)習(xí)的時(shí)候,應(yīng)該要知其然知其所以然才行,然后再多學(xué)學(xué)算法,原理和一些計(jì)算機(jī)基礎(chǔ)就更完美了。并不是會(huì)做就行,基礎(chǔ)扎實(shí),才能做得更好。

要想成就不敗金身,那我們就一起來(lái)知己知彼一下。那大公司到底喜歡面試什么樣的問(wèn)題呢?我該如何準(zhǔn)備呢?我通過(guò)朋友了解到,總結(jié)之后就兩點(diǎn):算法和原理。說(shuō)這些都是概念,來(lái)點(diǎn)實(shí)際的,給大家舉一些例子:

1、你一般是如何優(yōu)化你的APP的?

2、push Notification原理

3、iOS 中內(nèi)省的幾個(gè)方法?

4、class方法和objc_getClass方法有什么區(qū)別?

5、一個(gè)int變量被__block修飾與否的區(qū)別?

6、什么是離屏渲染?什么情況下會(huì)觸發(fā)?該如何應(yīng)對(duì)?

7、KVC的賦值和取值過(guò)程是怎樣的?原理是什么?

8、iOS中UITableViewCell的重用機(jī)制原理?

9、RunLoop剖析

10、內(nèi)存管理、自動(dòng)釋放池與循環(huán)引用

11、剖析Block

12、SDWebImage原理

13、如何高性能的給 UIImageView 加個(gè)圓角?

14、了解CoreData

15、簡(jiǎn)述內(nèi)存管理基本原則

16、GCD死鎖問(wèn)題解讀

17、談一談網(wǎng)絡(luò)中的 session 和 cookie?

好了,就先舉這些例子,以上的問(wèn)題來(lái)自于 BAT , 小米,滴滴,360,今日頭條,愛(ài)奇藝等。你們先感受一下,是不是會(huì)被虐呢?

通過(guò)上述面試題大家也基本看到了,有底層,有算法,有原理。

你只要在面試前,認(rèn)真準(zhǔn)備,充足準(zhǔn)備,應(yīng)該不會(huì)有多大的困難。其實(shí)大部分程序員面試大公司失敗的原因是自己準(zhǔn)備不足。大公司去校招成功率比較大的原因是大學(xué)學(xué)的一些基礎(chǔ)沒(méi)有忘掉,而現(xiàn)在的你,只注重實(shí)戰(zhàn),而不注重基礎(chǔ)。但是在拼技術(shù)的時(shí)代,基礎(chǔ)很重要,基礎(chǔ)和原理懂得的更多,做的東西才會(huì)更加牢固。

積累才是根本

前面說(shuō)了,通過(guò)了解面試準(zhǔn)則,面試準(zhǔn)備,那都是一種臨時(shí)抱佛腳的方法,讓你快速面試成功的一種捷徑罷了。其實(shí)平時(shí)的學(xué)習(xí)和積累才是根本。通過(guò)了解大公司的要求,我們?cè)谛」疽矐?yīng)該時(shí)刻嚴(yán)格要求自己,不要只注重實(shí)戰(zhàn),不要不在乎性能而僅僅去說(shuō)我實(shí)現(xiàn)了就好。

我們?cè)谄綍r(shí)的工作和學(xué)習(xí)的過(guò)程中,要時(shí)刻保持學(xué)習(xí)之心,不僅僅注重業(yè)務(wù)的實(shí)現(xiàn),有時(shí)間拿起書(shū)來(lái)看看基礎(chǔ)和原理,了解一些源碼,多做一些思考,其實(shí)總會(huì)慢慢進(jìn)步的。

再啰里啰嗦的舉個(gè)例子吧,比如:你最近看到社區(qū)里流行使用 MVP 模式,你就會(huì)去看一下 MVP 后,找一個(gè)開(kāi)源的模板,下載下來(lái),自己也開(kāi)始用,不要僅僅停留在使用上,

你應(yīng)該思考:

為什么大家都喜歡使用 MVP 模式?

這樣做的好處是什么?

我還能在這樣的基礎(chǔ)上做優(yōu)化嗎?

舉一反三的把自己?jiǎn)柕?,打破砂鍋?wèn)到底要用到自己身上。

總結(jié)

說(shuō)一千道一萬(wàn),不如自己去行動(dòng)。

要想在移動(dòng)互聯(lián)網(wǎng)的下半場(chǎng)是自己占有一席之地,那就得從現(xiàn)在開(kāi)始,從今天開(kāi)始,馬上嚴(yán)格要求自己,既重視業(yè)務(wù)實(shí)現(xiàn)能力,也重視基礎(chǔ)和底層原理。

基礎(chǔ)夯實(shí)好了,高樓才能夠平地而起,穩(wěn)如泰山。什么高并發(fā)導(dǎo)致的崩潰啊,什么明星緋聞啊,你的前端不怕,后端更不用怕。下次吹牛可以這么說(shuō):三對(duì)明星同時(shí)×××,我的程序也不會(huì)癱瘓。

掃碼進(jìn)交流群,有技術(shù)的來(lái)閑聊,沒(méi)技術(shù)的來(lái)學(xué)習(xí)

移動(dòng)互聯(lián)網(wǎng)下半場(chǎng) iOS 程序員面試真經(jīng),讓你進(jìn)入 BAT


向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI