资深Android开发带你入门Framework,架构师必备技能
開頭
先說一下我大概的情況吧。渣本畢業,工作已經有快兩年了,從高中就開始玩小破站。無論是學習還是日常放松都是在b站。大學主學的軟件技術專業,所以,進大學校門那一刻起,去上海bilibili工作就在心里埋下了種子。在學校,專業學的挺好的,自己寫過一些小項目,也參與過一些協會開發的項目。
 兩年前剛畢業時候,b站也有校招,我當然滿懷期待的參加了,但是并沒有被錄用。當時,挺失落的吧,當時也有想過放棄:我一個渣渣二本畢業,憑什么去上海,進b站啊。所以就找了個普普通通的公司開始了我的程序員生涯。
 到今年年初的時候,疫情爆發了,各行業都收到的很大的影響,也包括我任職的小公司。在家隔離了一個多月,在家玩手機的看到了b站的社招,人閑下來的時候還真就會有各種想法會冒出來,我突然就想到,要不再試一次吧,反正工作也沒了,在家閑著也是閑著,就著手準備bilibili的面試。刷面試題,看別人的面經,總結了一下校招時的失敗經驗…準備了挺久的,得有20多天吧,把學習所學的和工作兩年的所學以及網友的經驗,系統的梳理、鞏固。世間所有的付出終是有回報的,努力的耕耘,肯定是有收獲的。我成功的入職了bilibili,也是要感謝網友們提供的寶貴經驗,所以整理了一下,把我的面經分享出來給大家。
在這個知識膨脹的時代,每天面對鋪面而來的海量信息,我們的學習也不再是按照以往傳統的學習模式了,更重要的是我們要進行科學學習,什么是學習?學會學習才是根本,如何學會學習,那就要講求方法了,我們經常看到一些學霸等傳奇人物,聽他們的經歷,學他們的方法,路有千千萬,但是你想過沒有,也許適合你走的只有一條而已,所以,別人的不一定適合你,適合自己的才是最好的,但是學習效果不佳的原因卻大致有以下幾個:
關于“沒有正向反饋”
這應該很好理解,這里的沒有正向反饋指的就是我們在學習的過程中并不能看到感受到因學習而真正給我們帶來有什么不一樣的東西,哪怕是一種感覺,又或者是物質上的東西,總之,這是能夠讓我從內心覺得“學習真好”,可是我們往往卻很少遇到。我們總是希望付出了就能立馬看到收獲的,一旦達不到自己的期望,我們也就失去了激情,甚至開始抱怨,自然學習效率就會下降,所以學習中,我們一定要對正向反饋加以重視,這里說幾點關于我學習中用到的正向反饋吧!
-  
我學習編程有寫博客的習慣,當我剛寫完一篇博客的時候會有點小小成就感,隨后我會發給我認識的一些前輩,很多都給予了肯定,哪怕是鼓勵我我也高興!
 -  
有的時候我也會給一些大牛投稿,一旦被采用,那種心情是相當的說不出口的(太高興了)
 -  
在專業上我會幫別人解答一些問題或者分享一些知識等
 
以上都是我的一些正向反饋,這些都能激勵我更有動力的去學習,學習,你也有該有自己的正向反饋!
關于“學習方法不對”
這幾天特別中意一句話“當你找到了適合自己的努力方式,你就如同萬千牛人一樣走在了光彩奪目掌聲陣陣的人生征途上”,這句話就強調了方法是多么的重要,有的時候我們很項目那些學霸,覺得是自己智商不夠,其實不然,最重要的是那些所謂的學霸都有自己的一套學習方法。我們可以捫心自問,我們大多數人每天都在學習,但是又有多少人真正思考過自己學習方法的問題呢?我只是機械式的去學習而已,并沒有想著找尋一套屬于自己的方法體系,這就是我們與學霸的差別吧!
前幾天在讀美國作家本尼迪克特?凱里的《如何學習》一書,讀完很受啟發,其中書中提到了一種學習方法叫做“分散式學習”,講述的是利用間隔效應去學習,通俗來說就是我們把大塊的學習任務拆分開來去學,書中提到,你花兩個小時一口氣把一個知識點給學了沒有分兩天每天一小時的學習效果好,這就是方法
關于學習方法的探討很多很多,只是我們貌似從來沒有在意過,另外,切記只有適合自己的才是最好的,成功的人有很多,但是他們的路你不一定走得了,去尋找屬于自己的學習方法論吧!
關于“知識不成體系”
不知道大家在學習的過程中有沒有做筆記的習慣,我一直覺得做筆記是非常重要的,記得在高中的時候,我會給每一科都準備一個筆記本,上面寫滿了筆記,但是后來愈發的覺得筆記很亂,經常是一個知識點在很多頁記著,這就導致了很多問題。我們在回過頭來說“知識不成體系”,確實如此,我們每天都在學習,每天都接收了大量的信息,而且這些信息又是零散的,不成體系的,如果我們再不加以記錄,很容易遺忘,而且會感覺亂糟糟的,一點也不清晰明了,該怎么辦?很簡單,將我們學到的知識都記錄下來,而且是分門別類的記錄下來,將知識體系化,做一個屬于自己的體系化知識庫,這樣我們不僅會對我們學習的知識有個全面的了解,而且非常方便我們的復習鞏固等!還可以讓我們看到哪地方是自己的弱勢,方便彌補!這里以我自己舉個例子,方便大家理解!
我在學習Android的時候會將自己學到知識都分類別的進行整理,將自己學到的知識體系化,例如我會分成如下類別:
- 性能優化
 - 多線程
 - 源碼分析
 - 數據結構和算法
 - 設計模式
 - 框架設計
 - NDK
 - APP開發
 - 微信小程序
 - Flutter和kotlin
 
再比如我在學習中制作的一個學習思路腦圖,由于內容過多,這里就放上一個大概的思路腦圖分享給大家 高清圖可以看文末
 
 有了以上的分類記錄,我就對Android的一個大概的知識體系有個了解,以后相關學習都會放在對應的目錄下,平常看看,也知道自己哪方面不熟悉,隨時復習鞏固,做到對學到的知識心中有數,體系化知識構建不可缺少!
總結
首先是感覺自己的基礎還是不夠吧,大廠好像都喜歡問這些底層原理。
另外一部分原因在于資料也還沒有看完,一面時憑借那份資料考前突擊惡補個幾天居然也能輕松應對(在這里還是要感謝那份資料,真的牛),于是自我感覺良好,資料就沒有怎么深究下去了。
之前的準備只涉及了Java、Android、計網、數據結構與算法這些方面,面對面試官對其他基礎課程的考察顯得捉襟見肘。
下一步還是要查漏補缺,進行針對性復習。
最后的最后,那套資料這次一定要全部看完,是真的太全面了,各個知識點都涵蓋了,幾乎我面試遇到的所有問題的知識點這里面都有!在這里也免費分享給大家,希望大家不要犯和我一樣的錯誤呀!!!一定要看完!
 
 獲取方式:點擊我的GitHub
E5%A6%82%E4%BD%95%E9%9D%A2%E8%AF%95%E6%8B%BF%E9%AB%98%E8%96%AA%EF%BC%81.md)
總結
以上是生活随笔為你收集整理的资深Android开发带你入门Framework,架构师必备技能的全部內容,希望文章能夠幫你解決所遇到的問題。
                            
                        - 上一篇: 和平精英大天使号在哪
 - 下一篇: 杨三姐告状剧情介绍