Android AOP三大金剛簡介

原文地址:http://www.jianshu.com/p/be8a573f5810
相關文章:http://www.jianshu.com/p/dca3e2c8608a
大神要不是去了簡書要不就是有自己的博客,CSDN日不就已?

AOP是什麼這裏不多作解釋了,個人理解總結下來就是相對於各個垂直深入的業務邏輯,每個業務邏輯深度的某個層面他們有需要共同的特徵,此時對這種特徵進行統一的處理,也就是所謂的AOP(歡迎拍磚哈,技術在討論中提升)

主要應用場景:

  • 權限檢查
  • 日誌記錄
  • 性能監控
  • 埋點操作

Android 下一些可以進行AOP的工具

APT

在編譯時生成 .java 文件。

代表作品 ButterKnife 、 DataBinding、 EventBus3、Dagger2 等。

AspectJ

在.java編譯爲.class的時候,進行代碼注入。

代表作品: Hugo

Javassist

對已經編譯好的class文件進行操作。

代表作品: 各類熱修復框架(爲了解決類校驗問題)。

各個工具操作時機圖:
AOP工具操作時機

Android_AopDemo: https://github.com/githubwing/AopDemo

發佈了73 篇原創文章 · 獲贊 155 · 訪問量 35萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章