時間:2019-12-05 來源:互聯網 瀏覽量:
希望本指南能幫助你成為2020年想要成為的安卓開發人員
讓我們先從基礎開始。
從安卓開發開始 Level 11.從Head First Java學習基礎Java
2.安裝Android Studio
3.在Android Studio設置kotlin - 如果今年不想學的話可以跳過
4.閱讀Android User interface - 學習關於XML和查看組件的更多信息
你這樣做僅僅是準備好一個開發環境去構建安卓App,但是你還得去準備好基礎和基本知識來理解安卓開發和大多數教程使用的通用術語
你現在也可以在安卓係統上構建基本的App,並且可以開發一些功能。隨意使用空白畫布,用你的想象力填充它。
當你玩完創意後,2020年你的下一個目標是加快遊戲進度,推動自己成為一名為數十億人構建應用的開發者。我們現在去第二層!
提升自己 - 作為一個安卓開發者 Level 2這個列表將作為你學習、實踐和前進的階梯。
了解Activity的生命周期,以推動一個沒有bug的App使用Fragment利用動態的、靈活的和動態的UI設計學習如何調試你的安卓App-使用Android Studio Debugger掌握Activity來去構建你希望用戶瀏覽的頁麵了解安卓的Context學習REST和HTTP - 大多數專業開發都非常擅長理解REST和HTTP的所有特點學習如何利用多線程所有這些都有助於你建立對安卓生態係統的專業理解,並讓你準備好使用安卓處理至少10-15種不同類型的業務用例。
了解安卓執行模式當你真的想用安卓打造一個極其強大且難忘的體驗時,從安卓執行模式開始是一個完美的地方。如果你瀏覽下麵列表,你不僅會學到如何實現它們,還會發現一些你可能會錯過的執行模式。他們是專業開發手中不可思議的工具。因此,在安卓執行模式方麵,你需要學習和注意以下幾點:
異步任務對於運行長回調或線程回調的進程沒有幫助。學習如何使用Handlerthread來處理這些過程了解如何處理內存抖動了解如何將Intent Services與線程配合使用以提高效率了解安卓服務的執行模式,以便在Service工作結束後立即終止服務了解安卓特定的Hashmap容器,構建性能和內存平衡的App了解如何使用內存監控工具來觀察分配內存是如何影響App的性能的使用緩存優化應用程序的網絡性能優化應用程序網絡請求的頻率了解處理內存泄露的視圖了解如何處理垃圾回收了解如何更新App的視覺屬性去影響性能深入了解垂直同步了解如何將安卓用戶界麵與GPU進行映射,並發現你應該解決的複雜程度,以確保你的App平穩運行了解如何構建以60fps渲染而不丟幀的應用程序了解有多少其他App與你的App競爭係統資源,並設計應對策略了解如何跟GPU性能並在渲染App時提高性能了解如何減少電池消耗的策略將你的應用與你的競爭對手和Playstore突破性應用進行對比,並嚐試在應用發布時間內進行改進。看看你能走多遠縮小app的大小讓我們把它帶到第三層 Leve3深入研究Bitmap的內存優化
學習和練習如何使用Glide在安卓App中處理位圖。你麵臨的問題是,當你在你的App上提供大量內容時,需要獲取、解碼和顯示位圖。如果你做得不對,你最終會破壞你的應用,確保很多用戶會覺得你的應用不好。
請注意,現在你必須處理多達48MBs的位圖,這些位圖僅來自用戶的相機生成的圖像。這很容易耗盡所有可用的內存。
安卓架構組件
作為開發,我學到的最重要的事情之一是在架構及其組件之上進行實踐和創新。當我開始超越MVP、MVVM、MVx等等的時候,我意識到圍繞這些架構組件還有大量的創新空間。
例如,早在2017年,默認的BLE(藍牙低能耗)配置和設置就達不到標準。理解一個架構組件可以通過構建一個中間服務庫在這裏得到改進對我來說是一個巨大的好處。
因此,為了正確了解這一點,我建議你選擇App的各個架構組件,並學習它們的最佳實踐。我想到的其中一些是:
Data bindingLifecyclesLiveDataNavigationPagingRoomViewModelWorkManager【阿裏P7Android高級教程】
下麵資料部分截圖,誠意滿滿:特別適合有1-5年開發經驗的Android程序員們學習。
Android核心高級技術PDF文檔;
BAT一線互聯網公司麵試真題解析文檔資料;上述資料資源現開放免費獲取,附送高清腦圖,高清知識點講解教程,以及一些麵試真題及答案解析。送給需要的提升技術、近期麵試跳槽、自身職業規劃迷茫的朋友們。
這些資料收費嗎?
不收。收費的話很多人就看不到了,我希望更多的人能看到。
做一名測試專家你不想成為那些說“它在我的係統上運行良好”的開發者之一,對嗎?因此,在架構設計和優化知識的基礎上構建一切,創建單元測試(JUnit4),學習如何使用Espresso,並專注於構建令工程經理和虛擬專用網絡滿意的代碼覆蓋率報告。關注這些報告如何幫助工程師、測試人員、經理和利益相關者解決關鍵App的性能問題,並確定它們的優先級。
並盡可能多地從原始設置中實現自動化和重用。這為你成為一名工程經理鋪平了道路。
反應式編程 - RxJava這是不言而喻的,也可能是你簡曆和實際麵試中最受關注的信息之一。有很多地方你可以實際學習如何實現RxJava和它的最佳實踐。但是,我最喜歡的是:
Grokking RxJava SeriesExploring RxJava 2 by Jake WhartonManaging State with RxJava by Jake Wharton它們是你理解RxJava並掌握其某些方麵的一個很好的起點。如果你希望圍繞RxJava探索更多主題,請考慮瀏覽以下內容:
Depth of Observables in RxJavaImplementing Caching using RxJava了解Dagger的一切成為Dagger專家的步驟是:
瀏覽文檔並理解整個依賴注入過程建立一個限製列表建立一個項目並在其中實現Dagger2安全專業安卓專家和安全專家?哇!這是我們在開發中很少看到的東西!
因此,在2020年,你可以做一些事情來成為那個人:
就這樣了,希望這個列表能幫助你在2020年成為一名專業的安卓開發者!