Android高級面經[詳解]

Android高級面經[詳解]

絕對乾貨,每一篇都是Yim精心製作,相比晦澀難懂的技術文檔,以下文章都是Yim用簡單易懂的方式爲大家闡述,因爲小一覺得一篇讀不懂的blog是在浪費大家的時間,寫blog主要目的是爲了讓大家都能夠理解,能夠爲大家在工作中帶來一些啓發,而不是一味的寫一些看似高x格的blog來彰顯自己的技術有多牛x。
未完待續。。。大家也可以通過評論將一些大家遇到的問題向我提問。

Java基礎(JVM)

數據結構/算法

  • 棧 Stack
    • 隊列 Queue
    • 鏈表 Linked List
    • 數組 Array
    • 哈希表 Hash Table
    • 二叉樹 Binary Tree
  • 堆 Heap
    • 並查集 Union Find
    • 字典樹 Trie
    • 二分搜索 Binary Search
    • 分治 Divide Conquer
    • 寬度優先搜索 Breadth First Search
    • 深度優先搜索 Depth First Search
    • 回溯法 Backtracking
    • 雙指針 Two Pointers
    • 動態規劃 Dynamic Programming
    • 掃描線 Scan-line algorithm
    • 快排 Quick Sort

計算機網絡

  • 簡述TCP/IP體系?
  • TCP與UDP區別與應用?
  • GET,POST區別(計算機底層實現的區別)?
  • Https 理論基礎及Https在Android中的應用(HTTPS 理論基礎及其在 Android 中的最佳實踐 , 淺談https\ssl\數字證書)

操作系統基礎—-視頻—–試題

linux系統—-視頻—–試題

Gityuan

Android基礎

系統相關


  • Android系統啓動流程 ?
  • Jvm、Art 和 Dalvik對比?
  • 點擊 Android Studio 的 build 按鈕後發生了什麼?
  • Android應用安裝到手機上時發生了什麼?
  • Android應用啓動流程?
  • Android進程和 Application 的生命週期及保活方案?
  • Android的 Inter-Process-Communication (IPC)跨進程通信?
  • Binder 機制?
  • Handler 機制?
  • Activity、Service、Fragment的生命週期和啓動模式?
  • SP是進程同步的嗎?有什麼方法做到同步;
  • SpareArray原理?
  • App啓動流程
  • 應用程序安裝到手機上時發生了什麼?
  • 點擊 android Studio 的 build 按鈕後發生了什麼?
  • Activty的加載過程?
  • Android系統啓動流程 ?
  • Art和Dalvik對比
  • Android的 Inter-Process-Communication (IPC)跨進程通信;
  • App是如何沙箱化,爲什麼要這麼做;
  • 權限管理系統(底層的權限是如何進行管理 的);
  • 進程和Application 的生命週期;
  • 進程保活

架構相關


  • 組件化
  • 插件化
  • 熱修復
  • 換膚原理

View相關


  • View工作原理?
  • View的事件體系?
  • SurfaceView和TextureView的區別?
  • SurfaceView和TextureView的區別
  • View繪製機制和加載過程
  • Android事件分發機制,
  • Recycleview/ Listview的區別,性能
  • BroadcastReceiver,LocalBroadcastReceiver 區別
  • Service、Fragment、Activity生命週期
  • Bundle 機制
  • Handler 機制
  • HashMap源碼,SpareArray原理
  • SP是進程同步的嗎?有什麼方法做到同步;

圖片加載相關


  • Bitmap的加載原理?
  • Android中的緩存策略?
  • LruCache 底層原理?
  • 圖片三級緩存
  • 圖片加載原理;
  • Bitmap的處理;

優化相關


  • 內存回收機制與GC算法(各種算法的優缺點以及應用場景);
  • 內存泄露場景及避免和解決方法
  • Android性能優化
  • Android網絡優化
  • GC原理時機以及GC對象;

網絡相關


  • TCP與UDP區別與應用;
  • Https在Android中的應用;

開源庫


  • Glide源碼解析
  • Okhttp源碼解析

Android源碼—-羅昇陽(學習源碼思想)

Gityuan

六大原則和設計模式—android中的設計模式

  • 單一職責原則
  • 開閉原則
  • 里氏替換原則
  • 依賴倒置原則
  • 接口隔離原則
  • 迪米特原則

  • 單例模式
  • Builder模式
  • 原型模式
  • 工廠方法模式
  • 抽象工廠模式
  • 策略模式
  • 狀態模式
  • 責任鏈模式
  • 解釋器模式
  • 命令模式
  • 觀察者模式
  • 備忘錄模式
  • 迭代器模式
  • 模板方法模式
  • 訪問者模式
  • 中介者模式
  • 代理模式
  • 組合模式
  • 適配器模式
  • 裝飾漆器模式
  • 享元模式
  • 外觀模式
  • 橋接模式
  • MVC、MVP、MVVM 模式
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章