今天講一個 Android 開發小劉的故事。
年前他和大學同學聚會,和幾個在BAT的同學聊了聊技術,發現自己在創業公司這幾年,完全是喫老本的狀態,沒有什麼機會精進技術,同樣是工作了三年,和同學的差距卻越來越大。
▲圖片來源於網絡,侵刪
但真正讓他受打擊的是 3 月份的一次面試…
“面的是一個大廠,面試官問了很多問題,一大半的問題我都是一知半解,回答上來問題也是特沒底。
大概回顧了這場面試:上來先是問了Java基礎知識,jvm、字符串、集合、線程、四大組件等,這部分還算是Easy。第二部分開始複雜了,主要是設計模式、原理方面的問題
像是:
你說你做過自定義View,那麻煩說一下爲什麼Activity中有dispatchTouchEvent();?
View的測量過程
你說你當初用了volley,那你在技術選型時有什麼考慮?你知道volley有什麼缺點嗎?爲什麼有這樣的缺點?
okhttp的原理是什麼?相對之前的網絡請求框架的優勢是什麼?
主流的熱修復技術都有哪些?各自的原理是什麼?各自的優缺點是什麼?爲什麼你採用這個方案而不是別的?
我之前工作上經歷的少,加上自己技術儲備淺薄,到這部分時我就感覺自己快涼了。面試到最後,問了設計方案相關的,當時已經懵了。。。。進入大腦怠機狀態
面完後他說,覺得自己在技術上欠了很多債,最慘的是,在這之前他根本不知道。
小劉的經歷,正是很多1-3年的Android工程師的困擾,想夠一夠 2、3w月薪的崗位,但在底層技術上卻有很大的問題:
做了幾年的Android,表面上用過很多技術,但都沒能深入學習,一年的工作經驗,幹了好幾年。結果就是遇到實際問題時無從下手,最終還是走着普通工程師的道路,和高手的距離越來越遠。
都說三年是程序員的一個坎,能否晉升或者提高自己的核心競爭力,這幾年就十分關鍵。
技術發展的這麼快,從哪些方面開始學習,才能達到高級工程師水平,最後進階到架構師/ Android 技術專家?這 9 大能力是你一定要修煉的:
當然,想要深入學習並掌握這些技術能力,並不簡單。
關於如何學習
做程序員這一行什麼工作強度大家都懂,但是不管工作多忙,每週也要雷打不動的抽出 10 小時用來學習,不出半年,你就能看出顯著變化。我每天還會額外抽出1-2個小時的時間鍛鍊身體,這樣我的一週就比別人多了接近24小時的時間,日積月累下來,其他人再也不可能超過我。
我以我自己爲例,但確實還是有很多人即便想,也不能做到像我一樣,或是因爲加班,或是朋友聚會……
我要說的是:如果沒有很好的自律性,沒人指導,盲目自學大概率就是浪費時間精力,因爲不僅效率低、學習沒有體系,學完了也很難找到滿意的工作。畢竟面試時還是要層層深挖,不到不行不會停的。
之前就有粉絲跟我反應,說到平常自學是在博客上找相關的內容,結果過後不久還是忘得一乾二淨,面試時也只能回答出一點皮毛。
我就回答他,這是因爲掌握的知識不成體系,你感覺到你缺什麼纔去學什麼,並且網上的博客大多對原理隻字不提,你知道該這麼做卻又不知道爲什麼,平常在項目中也不常用到,會忘記是肯定的。
如果你像當年讀書那樣學習試試,那些數學方程式哪怕一直沒用,你看上一遍又能完全掌握,那些文言文的之乎者也,你根據語境也能看出門道,所以我常說,大多數程序員的根本問題是沒有系統化的學習,他們瞭解的知識根本不成體系化。
如果你想更系統地學習Android,那麼我推薦你一份《Android開發核心知識點筆記》:
如果你需要的話,可以 點這領取
包括有:
- Java知識點彙總
- Android知識點彙總
- Android擴展知識點
- 性能優化知識點彙總
- Android開源庫源碼分析
- Kotlin知識點彙總
- 設計模式彙總
- Gradle知識點彙總
- 計算機網絡基礎
- 常見面試算法題彙總
這十個板塊,後續還會補充更新更多相關內容
相信你可以從中獲益
目前正在利用下班時間補充修正,如果你看到有哪裏不對的話,還麻煩私聊告知我一下,我馬上去修改~
整套內容大致對標阿里P7、騰訊T3,通過體系化學習幫你完成Android進階
除此之外,也有很多粉絲反應最近面試越來越難了,面試官總會不斷深挖到底層,總能遇到自己不會、不懂得知識點,於是我還分享相關的 面試專題PDF 以及 高級架構進階視頻 幫助你從原理層面理解每一個問題,進大廠拿高薪還不是信手拈來?
很多朋友不是沒有資料,大多都是有幾十上百個G,但是雜亂無章,不知道怎麼看從哪看起,甚至是看後就忘
如果大家覺得自己在網上找的資料非常雜亂、不成體系的話,我也分享一套給大家,比較系統,我平常自己也會經常研讀。
如果你需要的話,可以 點這領取
漫漫開發之路,我們只是其中的一小部分……
只有不斷的學習、進階,纔是我們的出路!纔跟得上時代的進步!
6 月已經接近尾聲,2020 年已經過去1/2了,一年並沒有想象中那麼長,希望你永遠保持一份持續學習、持續思考的狀態。
共勉!