Java&Android 基礎知識梳理(1) - 註解
Java&Android 基礎知識梳理(2) - 序列化
Java&Android 基礎知識梳理(3) - 內存區域
Java&Android 基礎知識梳理(4) - 垃圾收集器與內存分配策略
Java&Android 基礎知識梳理(5) - 類加載&對象實例化
Java&Android 基礎知識梳理(6) - 字節輸入輸出流
Java&Android 基礎知識梳理(7) - Android 虛擬機
Java&Android 基礎知識梳理(8) - 容器類算法
Activity 知識梳理(1) - Activity 生命週期
Activity 知識梳理(2) - Activity 棧
Activity 知識梳理(3) - Activity 狀態保存和恢復數據庫
Fragment 知識梳理(1) - Fragement 源碼解析
Fragment 知識梳理(2) - Fragment 狀態保存和恢復
Fragment 知識梳理(3) - FragmentPagerAdapter 和 FragmentStatePagerAdapter 解析
Fragment 知識梳理(4) - FragmentPagerAdapter 和 FragmentStatePagerAdapter 的數據更新問題編程
View 繪製體系知識梳理(1) - LayoutInflater#inflate 源碼解析
View 繪製體系知識梳理(2) - setContentView 源碼解析
View 繪製體系知識梳理(3) - 繪製流程之 Measure 詳解
View 繪製體系知識梳理(4) - 繪製過程之 Layout 詳解
View 繪製體系知識梳理(5) - 繪製過程之 Draw 詳解
View 繪製體系知識梳理(6) - 繪製過程之 requestLayout 和 invalidate 詳解
View 繪製體系知識梳理(7) - getMeasuredWidth 和 getWidth 的區別設計模式
View 事件傳遞體系知識梳理(1) - 事件分發機制
View 事件傳遞體系知識梳理(2) - 嵌套滑動的實現原理數組
RecyclerView 知識梳理(1) - 綜述
RecyclerView 知識梳理(2) - Adapter
RecyclerView 知識梳理(3) - LayoutManager
RecyclerView 知識梳理(4) - ItemDecoration
RecyclerView 知識梳理(5) - ItemTouchHelper緩存
圖片基礎知識梳理(1) - ImageView 的 ScaleType 屬性解析
圖片基礎知識梳理(2) - Bitmap 佔用內存分析
圖片基礎知識梳理(3) - Bitmap&BitmapFactory 解析性能優化
圖片壓縮知識梳理(0) - 圖片壓縮學習計劃
圖片壓縮知識梳理(1) - PNG 原理
圖片壓縮知識梳理(2) - 減少 PNG 大小
圖片壓縮知識梳理(5) - VectorDrawable 簡介
圖片壓縮知識梳理(6) - VectorDrawable 及 AnimatedVectorDrawable 使用詳解
圖片壓縮知識梳理(8) - WebP 使用詳解
圖片壓縮知識梳理(9) - 選擇合適的圖片格式網絡
Canvas&Paint 知識梳理(1) - Canvas 基礎
Canvas&Paint 知識梳理(2) - Canvas 的保存和恢復
Canvas&Paint 知識梳理(3) - 顏色合成 Paint#setColorFilter
Canvas&Paint 知識梳理(4) - 圖像合成 Paint#setXfermode
Canvas&Paint 知識梳理(5) - Paint#setShader
Canvas&Paint 知識梳理(6) - 繪製路線 Path 基本用法多線程
Loader 知識梳理(1) - LoaderManager初探
Loader 知識梳理(2) - initLoader和restartLoader的區別
Loader 知識梳理(3) - 自定義Loader架構
動畫體系知識梳理(1) - 轉場動畫 ContentTransition 理論篇
動畫體系知識梳理(2) - 轉場動畫 ContentTransition 實踐篇
Android 異步任務知識梳理(1) - AsyncTask 解析
Android 異步任務知識梳理(2) - HandlerThread 解析
Android 異步任務知識梳理(3) - AsyncQueryHandler 解析
Android 數據存儲知識梳理(1) - SQLiteOpenHelper 源碼解析
Android 數據存儲知識梳理(2) - Android存儲目錄
Android 數據存儲知識梳理(3) - SharedPreference 源碼解析
Android 數據存儲知識梳理(4) - 數據庫升級操做的處理策略
Retrofit 知識梳理(1) - 流程分析
Retrofit 知識梳理(2) - Retrofit 動態代理內部實現
OkHttp 知識梳理(1) - OkHttp 源碼解析之入門
OkHttp 知識梳理(2) - OkHttp 源碼解析之異步請求 & 線程調度
OkHttp 知識梳理(3) - OkHttp 之緩存基礎
Glide 知識梳理(1) - 基本用法
Glide 知識梳理(2) - 自定義Target
Glide 知識梳理(3) - 自定義transform
Glide 知識梳理(4) - 自定義animate
Glide 知識梳理(5) - 自定義GlideModule
RxJava 知識梳理(1) - RxJava 解析
RxJava 知識梳理(2) - RxJava2 操做符實踐
RxJava 知識梳理(3) - RxJava2 基礎知識小結
RxJava2 實戰知識梳理(1) - 後臺執行耗時操做,實時通知 UI 更新
RxJava2 實戰知識梳理(2) - 計算一段時間內數據的平均值
RxJava2 實戰知識梳理(3) - 優化搜索聯想功能
RxJava2 實戰知識梳理(4) - 結合 Retrofit 請求新聞資訊
RxJava2 實戰知識梳理(5) - 簡單及進階的輪詢操做
RxJava2 實戰知識梳理(6) - 基於錯誤類型的重試請求
RxJava2 實戰知識梳理(7) - 基於 combineLatest 實現的輸入表單驗證
RxJava2 實戰知識梳理(8) - 使用 publish + merge 優化先加載緩存,再讀取網絡數據的請求過程
RxJava2 實戰知識梳理(9) - 使用 timer/interval/delay 實現任務調度
RxJava2 實戰知識梳理(10) - 屏幕旋轉致使 Activity 重建時恢復任務
RxJava2 實戰知識梳理(11) - 檢測網絡狀態並自動重試請求
RxJava2 實戰知識梳理(12) - 實戰講解 publish & replay & share & refCount & autoConnect
RxJava2 實戰知識梳理(13) - 如何使得錯誤發生時不自動中止訂閱關係
RxJava2 實戰知識梳理(14) - 在 token 過時時,刷新過時 token 並從新發起請求
RxJava2 實戰知識梳理(15) - 實現一個簡單的 MVP + RxJava + Retrofit 應用
Dagger2 知識梳理(1) - Dagger2 依賴注入的兩種方式
Dagger2 知識梳理(2) - @Qulifier 和 @Named 解決依賴注入迷失
Dagger2 知識梳理(3) - 使用 dependencies 和 @SubComponent 完成依賴注入
Dagger2 知識梳理(4) - @Scope 註解的使用
N
的字符串的最長迴文子串*
移到前部,而且不改變非*
的順序C++
k
個數s
的兩個數s
,打印出全部和爲s
的連續正數序列n
,將其分爲m
份,使各份的和相等,求m
的最大值Kotlin 知識梳理(1) - Kotlin 基礎
Kotlin 知識梳理(2) - 函數的定義與調用
Kotlin 知識梳理(3) - 類、對象和接口
Kotlin 知識梳理(4) - 數據類、類委託 及 object 關鍵字
Kotlin 知識梳理(5) - lambda 表達式和成員引用
Kotlin 知識梳理(6) - Kotlin 的可空性
Kotlin 知識梳理(7) - Kotlin 的類型系統
Kotlin 知識梳理(8) - 運算符重載及其餘約定
Kotlin 知識梳理(9) - 委託屬性
Kotlin 知識梳理(10) - 高階函數:Lambda 做爲形參或返回值
Kotlin 知識梳理(11) - 內聯函數
Kotlin 知識梳理(12) - 泛型類型參數
Kotlin 知識梳理(13) - 運行時的泛型
多線程知識梳理(1) - 併發編程的藝術筆記
多線程知識梳理(2) - synchronized 三部曲之基本使用
多線程知識梳理(3) - synchronized 三部曲之鎖優化
多線程知識梳理(4) - synchronized 三部曲之等待/通知模型
多線程知識梳理(5) - 線程池四部曲之 Executor 框架
多線程知識梳理(6) - 線程池四部曲之 ThreadPoolExecutor
多線程知識梳理(7) - ConcurrentHashMap 實現原理
插件化知識梳理(1) - Small 框架之如何引入應用插件
插件化知識梳理(2) - Small 框架之如何引入公共庫插件
插件化知識梳理(3) - Small 框架之宿主分身
插件化知識梳理(4) - Small 框架之如何實現插件更新
插件化知識梳理(5) - Small 框架之如何不將插件打包到宿主中
插件化知識梳理(6) - Small 源碼分析之 Hook 原理
插件化知識梳理(7) - 類的動態加載入門
插件化知識梳理(8) - 類的動態加載源碼分析
插件化知識梳理(9) - 資源的動態加載示例及源碼分析
插件化知識梳理(10) - Service 插件化實現及原理
NDK 知識梳理(1) - 使用 CMake 進行 NDK 開發之初體驗
NDK 知識梳理(2) - 使用 CMake 進行 NDK 開發之如何編寫 CMakeLists.txt 腳本
Material Design 控件知識梳理(1) - Android Design Support Library 是什麼
Material Design 控件知識梳理(2) - AppBarLayout & CollapsingToolbarLayout
Material Design 控件知識梳理(3) - BottomSheet && BottomSheetDialog && BottomSheetDialogFragment
Material Design 控件知識梳理(4) - FloatingActionButton
Material Design 控件知識梳理(5) - DrawerLayout && NavigationView
Material Design 控件知識梳理(6) - Snackbar
Material Design 控件知識梳理(7) - BottomNavigationBar
Material Design 控件知識梳理(8) - TabLayout
Material Design 控件知識梳理(9) - TextInputLayout
性能優化工具知識梳理(1) - TraceView
性能優化工具知識梳理(2) - Systrace
性能優化工具知識梳理(3) - 調試GPU過分繪製 & GPU呈現模式分析
性能優化工具知識梳理(4) - Hierarchy Viewer
性能優化工具知識梳理(5) - MAT
性能優化工具知識梳理(6) - Memory Monitor & Heap Viewer & Allocation Tracker
性能優化工具知識梳理(7) - LeakCanary
性能優化工具知識梳理(8) - Lint
性能優化技巧知識梳理(1) - 佈局優化
性能優化技巧知識梳理(2) - 內存優化
架構設計知識梳理(1) - Dagger2
架構設計知識梳理(2) - Flux
Framework 源碼解析知識梳理(1) - 應用進程與 AMS 的通訊實現
Framework 源碼解析知識梳理(2) - 應用進程與 WMS 的通訊實現
Framework 源碼解析知識梳理(3) - 應用進程之間的通訊實現
Framework 源碼解析知識梳理(4) - 從源碼角度談談 Handler 的應用
Framework 源碼解析知識梳理(5) - startService 源碼分析
Framework 源碼解析知識梳理(6) - ContentProvider 源碼解析