APP軟體開發之Android開發進階

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軟體開發之Android開發進階

APP軟體設計模式

Java基礎

java設計模式的六大設計原則以及它們的關係。

單例模式、介面卡模式、裝飾者模式、代理模式、外觀模式、策略模式、觀察者模式、責任鏈模式、命令模式、狀態模式、中介者模式。這十一種常用的設計模式是考核的重點,你需要掌握它們的優缺點以及使用的場景

介面卡模式,裝飾者模式,外觀模式它們之間的區別是什麼

代理模式、策略模式、狀態模式它們之間的區別是什麼

外觀模式、中介模式它們之間的區別是什麼

靜態代理和動態代理的區別,什麼場景使用,實現動態代理的幾種方式

簡單列舉幾個Android原始碼中使用到設計模式的例子

設計模式

Android系統的啟動流程分析

APP啟動的流程分析

Activity的啟動流程分析

Zygote程序的建立和啟動流程分析

Window視窗建立和載入的流程分析

Dalvik和ART的理解

RecyclerView的原始碼分析

Android原始碼分析

各類排序(尤其二分法插入排序、歸併排序需要著重掌握其思想)

手寫反轉連結串列、連結串列複製、連結串列合併

手寫佇列或者連結串列等資料結構的實現

字串匹配、去重問題

雙指標演算法問題

陣列查重問題

二叉樹的遍歷和序列化

貪心演算法相關問題

APP軟體開發之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開發知識類目,有錯誤和不清楚的歡迎大家留言交流。