大佬你好,做爲一個Android開發者,在學習過程當中有什麼須要注意的?程序員
這個問題其實也不太好回答,由於要注意的問題蠻多的,多得就像霧霾中的顆粒。不過,有趣的是,流年似水這兩次的提問中,對個人稱呼大有不一樣。面試
再說,我也不是什麼「大佬」,無非比較接地氣一點,喜歡和你們交流分享的感受而已。算法
那麼接下來,我就針對這個提問,作一些回答。但願對有相似問題的同窗起到一個參考的做用。將以如下幾個方面作出回答:小程序
1.不斷學習
2.分享一下個人學習方法
3.移動開發者核心生存技能(高能!)微信小程序
不管是博客園也好、公衆號也好仍是微信裏的聊天,總有朋友問起諸如此類的問題:設計模式
我認爲這是一個值得思考的好問題,就這個問題,基於我平時的學習和一些我的的思考,分享一下想法。性能優化
記得我剛剛工做那會兒,知識儲備不是很足,這種時候工做中不免遇到一些問題:微信
也就是一次一次這樣的狀況以後,讓我有了我的的思考,核心概括起來就是兩個字:儲備。數據結構
儲備,換言之就是以工做中可能碰到的一些問題不斷地去學習、不斷充實本身,當本身掌握地越多,當知識儲備越充分,你會慢慢發現本身:架構
最後就是領導以爲你優秀、出去面試對方以爲你優秀,承擔的職位愈來愈重要、乾的活愈來愈有技術含量,拿的薪資愈來愈高。說白了怎麼衡量一個程序員比其餘程序員好?我認爲就兩點:
能夠分享的經驗是,如今工做中遇到的問題,我基本解決時間沒有超過1小時的。
雖然起了這個大標題,可是我本人並不認爲我很聰明,這個要聲明在前面
儘管如此,可是所謂"活到老學到老",經過學習,我認爲仍是可讓本身不斷提升,並不只僅是學習到的那些知識,更多的還有:
腦子越用越靈、越用越活,這些都是學習、思考帶來的。
這個理由功利性很強,可是很實際,由於對我來講這個不是我平時去學習的理由,就放在最後講了。
如今出去任何一家公司,期望面試官僅僅問你以下問題:
坦白說,那是不可能的,即便僅僅問到了這些且你100分經過,也不建議去,無他,面試層次過低。
但凡像樣點的面試,問稍微進階點的用法、細節性的問題、底層性的原理都是再正常不過的了。
不少東西,平時沒有一點積累是答不上來的,答不上來的東西越多,天然面試成功的機率也越低。
就這個寫了一些我的思考,但願對你們有益,最後總結一下:
接下來分享一下個人一些學習方法,但願能發給你們一些啓發。
直接切入正題,根據我我的經驗來講,咱們學習的途徑一般有本身鑽研、看書、看博客三種,那麼這三種學習方式各適合怎麼樣的場景呢?下面我按照我認爲的幾種層次說說個人見解。
看書:我始終認爲看書是一種最好的學習方式,由於一本書能出版,絕大多數狀況下都是通過了做者的千錘百煉,書本里關於知識點的講述、對Demo的編寫必定是通過了斟酌與考究過的,所以學一個知識點只要買一本好書,從頭看到尾,Demo所有敲一遍且理解一遍,一定大有精進。像我學習的大部分知識,性能優化、NDK、Java基礎這些都是經過看書敲Demo來學習的。
看博客:一本書可能有幾百頁會比較多,博客一般是對於知識點的總結與提煉,將幾百頁的知識提煉到一篇或者幾篇文章中,但不會有書本講的這麼詳細。所以我認爲博客是對於書本知識的一種總結,學習,以書本爲主、博客爲輔是最好的。另外,博客不像書本須要通過一段時間的學習,博客看看比較快,適合短期的學習(好比午休、晚飯點),對於擴寬本身的知識點、知識面也是很是不錯的
最後說說書本的選擇,我是很是推薦買國內的書而不是老外寫的書,國內的書比較偏重實戰,說代碼並經過代碼講解知識點,老外的書偏重把一個理論講精、講細,前者適合初學者學懂知識、後者適合深刻研究。
這裏推薦一些書籍:
Android初級入門:《第一行代碼》
Android開發進階,以及設計模式的學習:《Android開發藝術探索》,《Android源碼設計模式解析與實戰》
學習固然是爲了本身,可是寫下來且別人懂是我總結出來的很是重要的一條經驗,大體提及來是這樣的:
首先,把東西寫下來,這樣能夠之後隨時能夠看,可是若是不寫下來,可能如今學懂了,以後又忘了
學習的時候,可能有些知識點本身是以爲迷迷糊糊似懂非懂,就當作懂了算了,組織成文字就不同,懂就是懂、不懂就是不懂,不懂的東西是很難用懂的文字寫出來的
由於寫出來的東西別人是能看到的,所以也是強迫本身用通俗易懂的話去進行總結,能把一個知識點用通俗易懂的話說出來,我能夠認爲是真正學通了
能夠給你們分享的是,至今印象深入,當我一開始寫博客的時候,寫的插件化、熱修復,當時寫完我還萬般猶豫,到底要不要發、要不不發算了,可是咬咬牙發佈了以後,慢慢地咬牙、慢慢地咬牙,以後寫博客已經愈來愈成爲我學習的一種習慣了。
如今我我的的想法就是:假如學習任何知識點,我不能寫成一篇博文,那我絕對不會認爲這個知識點我已經學懂。
習慣成天然,大概就是說的這個意思吧!
說出來讓別人懂我認爲是學懂的最高層次。
寫了博文,別人給你留言,你可能能夠等個10分鐘、10小時、10天把東西弄懂了纔回復,可是說出來則不同,不少問題都是突發的,說得出來就是說得出來,說不出來就是說不出來。
所以,說出來讓別人懂這個層次依賴於咱們把一個知識點從頭至尾、從前到後不折不扣搞懂,這樣才能無畏地面對任何問題。
若是有勇氣演講、分享,不管組內的5我的、仍是公司的50我的、仍是外面線下活動的500我的、5000我的,那都是對於本身最大的成長。
學懂==>寫出來==>說出來,經過上賣弄的分享,但願你們能夠朝着更高的層次邁進。
##移動開發者核心生存技能(高能!)
這是一份一份大而全的「Android高級工程師」面試xmind(實際上比預期多花了很多精力),包含了阿里、美團、百度、網易、騰訊、美團等今年面試題中出現的知識脈絡 + 分支細節,因爲篇幅有限,這裏以圖片的形式給你們展現一部分。
這份 xmind 尤爲適合:
1.近期想跳槽,要面試的Android程序員,查漏補缺,以便儘快彌補短板;
2.想了解「一線互聯網公司」最新技術要求,對比找出自身的長處和弱點所在,評估本身在現有市場上的競爭力如何;
3.作了幾年Android開發,但還沒造成系統的Android知識體系,缺少清晰的提高方向和學習路徑的程序員。
一、從寫代碼的時候就注意,讓本身的代碼是高性能高可用的代碼,這個過程是書寫高性能代碼
二、對已經成型的代碼經過工具檢測代碼問題,經過檢查到問題來指導咱們進行代碼的刪改這個過程被稱爲調優
須要咱們具有深厚的代碼功底,這就是代碼的基礎,如:數據結構達到能夠根據應用場景寫出符合當前場景的特殊結構,好比google針對Android平臺特徵研發了SparseArray代替HashMap.另外,對經常使用的算法也有本身獨到的看法
移動架構師不可不學習微信小程序
好了,直接進入正題吧,爲了你們可以順利進階中高級、架構師,我特意爲你們準備了一套精品Android架構師教程,保證你學了之後保證薪資上升一個臺階。(如下是一小部分,獲取更多其餘精講進階架構視頻資料能夠加我wx:X1524478394 免費獲取)
一下是今天給你們分享的一些獨家乾貨:
①Android開發核心知識點筆記
②對標「阿里 P7」 40W+年薪企業資深架構師成長學習路線圖
③面試精品集錦彙總
④全套體系化高級架構視頻
Android精講視頻領取學習後更加是如虎添翼!進軍BATJ大廠等(備戰)!如今都說互聯網寒冬,其實無非就是你上錯了車,且穿的少(技能),要是你上對車,自身技術能力夠強,公司換掉的代價大,怎麼可能會被裁掉,都是淘汰末端的業務Curd而已!現現在市場上初級程序員氾濫,這套教程針對Android開發工程師1-6年的人員、正處於瓶頸期,想要年後突破本身漲薪的,進階Android中高級、架構師對你更是如魚得水,趕快領取吧!
【Android進階學習視頻】、【全套Android面試祕籍】加我wx:X1524478394 免費獲取