aop区别 decorator_Decorator或Proxy模式;AOP拦截器
總結(jié)如下:過濾器實現(xiàn)方式在不保證功能前提下,從性能角度考慮有如下先后順序:Decorator或Proxy模式;AOP攔截器。
考慮使用AOP攔截器時,最好選擇那些受眾面積比較廣的功能,例如一些基礎(chǔ)通用功能:權(quán)限檢查;事務(wù)機制;Pool等,這些功能不是針對某個具體類或方
法(方法權(quán)限除外),而是一系列類,這樣使用動態(tài)AOP攔截器,就是有些性能損耗也是值得的,而且是必要的,使用其他方法也會引起這樣的損耗。
如果過濾器是業(yè)務(wù)邏輯的一部分,而且在設(shè)計時,我們可以確定這些過濾器,這樣我們使用Decorator模式或Proxy模式進行特定指定的攔截,當(dāng)
然,因為每個類/接口都需要一個附加的Decorator/Proxy,如果某個過濾功能是很多類都需要的,會形成很多Decorator/Proxy附
加類,當(dāng)點形成面時,這時AOP切面概念就應(yīng)該浮現(xiàn)在你腦海,這時升級使用AOP攔截器就更好。Decorator/Proxy在點上針對性相當(dāng)強,特別
在這個點上有一系列過濾器需要實現(xiàn)時。
職責(zé)鏈和Decorator/AOP攔截器是有些
區(qū)別的,在一個動態(tài)運行系統(tǒng)中,有兩個概念:由客戶端觸發(fā)的請求對象,該請求對象需要穿透一系列過濾器(防火墻),最終可能達到持久層數(shù)據(jù)庫。
Decorator/AOP攔截器是對過濾器管理的一種模式,也就是說:怎么設(shè)計過濾器類;過濾器類關(guān)系是怎樣;而職責(zé)鏈不是對類關(guān)系管理定義,而是為了
處理某個請求對象而實現(xiàn)的。他們區(qū)別在于目標(biāo)對象不一樣,所以職責(zé)鏈?zhǔn)且环N很具體的行為。
在這個層面上,Command模式和其是相競爭的,Command模式類似直接拋繡球,知道目的,能夠最有效率,但是前提在設(shè)計編碼階段你必須知道你的目的地;Command模式和職責(zé)鏈的區(qū)別與Decorator和AOP攔截器的區(qū)別是類似的。
總結(jié)
以上是生活随笔為你收集整理的aop区别 decorator_Decorator或Proxy模式;AOP拦截器的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 怎么中文读_这些中文名字如果用日语念出来
- 下一篇: 阅读器xodo_佐道Xodo——手机最佳