前言
上回承諾過大家,一定會出 HTTP 的系列文章,今天終于整理完成了。作為一個 web 開發,HTTP 幾乎是天天要打交道的東西,但我發現大部分人對 HTTP 只是淺嘗輒止,對更多的細節及原理就了解不深了,在面試的時候感覺非常吃力。這篇文章就是為了幫助大家樹立完整的 HTTP 知識體系,并達到一定的深度,從容地應對各種靈魂之問,也同時提升自己作為一個 web 開發的專業素養吧。這是本文的思維導圖:
華為四面(3次技術面+HR面)
一面(1hour)
- 自我介紹
- 項目介紹,技術點相關。
- C++和Java區別,GC
- 線程相關,Runnable和Thread的區別。
- 線程池
- synchronized,volatile
- 繼承相關,多重繼承和接口
- 網絡編程
- UPD,TCP區別
- 最大的優點
- 最大的缺點
- 算法,二叉樹中序遍歷,
早上狀態很差,簡單問題也會卡殼,希望大家還是能夠選擇自己狀態好的時間點面試……。
二面(40mins)
- 自我介紹
- camera 硬件有哪些引腳。
- 問渲染管線主要有哪幾個階段?
- Android的數據存儲方式等等。
- 說說mvc模式的原理,它在android中的運用。
- 談談你的工作經歷,聊聊你的職業規劃等。
- 問了一下,java有幾大基礎數據類型。
- 問了Activity啟動的幾種模式,強引用、軟引用、弱引用、虛引用使用。
- 還問了我做過的App上有一個實現的自定義View問了下實現的思路。
- 又問了自定義View,三個不同的構造函數的各自作用。
- 問Scoket和Http最大的區別是什么?
華為面試安排非常緊張,但是反饋效率特別高,一二面結束馬上會短信通知是否通過。然后隔天直接三面,流程走的非常快。
三面(40mins)
- C/C++基礎:inline和define的區別;
- volatile的作用,應用在哪些地方,為什么不是所有的變量都用volatile
- static變量的特點
- 操作系統:線程和進程,怎么實現線程的同步
- 數據結構:對什么排序比較熟悉;二分法查找
- 現場寫程序:一句代碼實現,判斷一個int類型的數是否是2的冪。2進制,位運算a&(a-1)
- 做軟件測試什么能力比較重要?
- 白盒測試和黑盒測試的區別。
- 什么是UT?
- 問了關于規范、擴展、回調,父類的靜態方法能否被子類重寫等問題
- 冒泡排序算法。
- 虛擬機原理、內存回收機制等。
- 說說對華為的了解
- 為什么離職?到華為會不會不習慣?
HR面(20mins)
- 為什么離職
- 有沒有職業規劃
- 對公司未來的展望
- 以前公司的薪資待遇
- 期待的薪資
HR面還好,感覺都是一些常見的問題,沒什么很刁鉆的問題。
最后
今天關于面試的分享就到這里,還是那句話,有些東西你不僅要懂,而且要能夠很好地表達出來,能夠讓面試官認可你的理解,例如Handler機制,這個是面試必問之題。有些晦澀的點,或許它只活在面試當中,實際工作當中你壓根不會用到它,但是你要知道它是什么東西。
最后在這里小編分享一份自己收錄整理上述技術體系圖相關的幾十套騰訊、頭條、阿里、美團等公司19年的面試題,把技術點整理成了視頻和PDF(實際上比預期多花了不少精力),包含知識脈絡 + 諸多細節,由于篇幅有限,這里以圖片的形式給大家展示一部分。
還有 高級架構技術進階腦圖、Android開發面試專題資料,高級進階架構資料 幫助大家學習提升進階,也節省大家在網上搜索資料的時間來學習,也可以分享給身邊好友一起學習。
Android學習PDF+架構視頻+面試文檔+源碼筆記
【Android核心高級技術PDF文檔,BAT大廠面試真題解析】
【算法合集】
【延伸Android必備知識點】
【Android部分高級架構視頻學習資源】
【延伸Android必備知識點】
[外鏈圖片轉存中…(img-VSZQZ0PZ-1620895354013)]
【Android部分高級架構視頻學習資源】
**Android精講視頻領取學習后更加是如虎添翼!**進軍BATJ大廠等(備戰)!現在都說互聯網寒冬,其實無非就是你上錯了車,且穿的少(技能),要是你上對車,自身技術能力夠強,公司換掉的代價大,怎么可能會被裁掉,都是淘汰末端的業務Curd而已!現如今市場上初級程序員泛濫,這套教程針對Android開發工程師1-6年的人員、正處于瓶頸期,想要年后突破自己漲薪的,進階Android中高級、架構師對你更是如魚得水,趕快領取吧!