00:39
什麼是APP?
作為一名
Android開發工程師需要具備哪些相關的知識儲備,整理瞭如下知識學習列表供大家參考。
Handler機制以及相關知識
Activity和Fragment生命週期
Android四大元件相關的知識
Android程序間通訊的方式
Context相關的知識
Activity的啟動模式
Android動畫相關知識
Android自定義元件相關知識
Android事件分發機制以及觸控事件衝突的處理
分層模型、TCP、UDP、HTTP、HTTPS
ANR產生的原因以及避免ANR的方式
記憶體洩漏產生的原因以及定位解決的方式
OOM產生的原因以及解決的方式
Android頁面渲染機制以及最佳化方式
LinearLayout、FrameLayout、RelativeLayout和ConstraintLayout的理解和效能對比
Android
各版本
的特性
Android螢幕適配的技巧
MVC,MVP,MVVM的理解與實踐
Android的主題、樣式、屬性相關的內容
JNI相關的知識
Android基礎
Java集合類List,Map,Set相關的實現原理
Java執行緒池的實現原理和使用
Java執行緒同步相關的知識點
Java鎖機制,以及死鎖產生的原因以及解決方案
Java反射、泛型、註解相關的知識點以及使用
Java類載入機制
Java虛擬機器的資源回收機制以及演算法
資料加密
APP軟體設計模式
Java基礎
java設計模式的六大設計原則以及它們的關係。
單例模式、介面卡模式、裝飾者模式、代理模式、外觀模式、策略模式、觀察者模式、責任鏈模式、命令模式、狀態模式、中介者模式。這十一種常用的設計模式是考核的重點,你需要掌握它們的優缺點以及使用的場景
介面卡模式,裝飾者模式,外觀模式它們之間的區別是什麼
代理模式、策略模式、狀態模式它們之間的區別是什麼
外觀模式、中介模式它們之間的區別是什麼
靜態代理和動態代理的區別,什麼場景使用,實現動態代理的幾種方式
簡單列舉幾個Android原始碼中使用到設計模式的例子
設計模式
Android系統的啟動流程分析
APP啟動的流程分析
Activity的啟動流程分析
Zygote程序的建立和啟動流程分析
Window視窗建立和載入的流程分析
Dalvik和ART的理解
RecyclerView的原始碼分析
Android原始碼分析
各類排序(尤其二分法插入排序、歸併排序需要著重掌握其思想)
手寫反轉連結串列、連結串列複製、連結串列合併
手寫佇列或者連結串列等資料結構的實現
字串匹配、去重問題
雙指標演算法問題
陣列查重問題
二叉樹的遍歷和序列化
貪心演算法相關問題
開源專案OKHttp
演算法
OkHttp
Retrofit
Glide
LeakCanary
RxJava
ARouter
EventBus
ButterKnife
GreenDao
Dagger2
開源專案原始碼分析
App穩定性最佳化。(crash、效能以及體驗等)
App啟動速度最佳化
App記憶體最佳化
App介面繪製最佳化
App瘦身最佳化
App安全最佳化
網路請求最佳化
WebView使用最佳化
RecyclerView的快取重新整理最佳化
AOP技術的原理和實踐
gradle指令碼持續整合技術
App程序保活
Android進階
Android元件化
Android外掛化
Android熱更新技術
Android JetPack框架技術
Kotlin開發技術
Android Hook技術
AOP技術
依賴注入技術IoC
ReactNative
Flutter
以上便是總結的Android開發知識類目,有錯誤和不清楚的歡迎大家留言交流。