亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

.Net中AOP的最佳實現是什么?

.Net中AOP的最佳實現是什么?

人到中年有點甜 2019-11-23 13:24:13
C#,VB.net中有很多AOP實現。這是一些AOP實現:后銳網路Aspect.NET企業庫3.0策略注入應用程序塊AspectDNGDotSpect(.SPECT)在Spring.NET框架作為其功能的一部分威卡和莫克斯特溫特大學對.NET的AOSD解決方案進行了詳盡的分析Seasar.NET方面#拼圖撰寫*設定點NConcern .NET AOP框架....Net中AOP的最佳實現是什么?我應該用什么?
查看完整描述

3 回答

?
HUWWW

TA貢獻1874條經驗 獲得超12個贊

“最佳”是主觀的。

首先,列出所需功能,體系結構等的列表。然后尋找可以滿足您需求的選項,而又不引入不必要的復雜性。例如,有幾種面向接口:您的代碼當前是否面向接口?如果不是這樣,則PostSharp可能是一個更好的選擇(被編織到原始類中)。但是,當然,不能在運行時配置PostSharp。


查看完整回答
反對 回復 2019-11-23
?
智慧大石

TA貢獻1946條經驗 獲得超3個贊

在.NET中進行面向方面的編程的最佳方法是使用眾所周知的設計技術。例如,通過應用SOLID原則,您可以實現允許添加跨領域關注點所需的靈活性和模塊化。如果您擁有設計權,那么您甚至可以在沒有任何框架的情況下應用大多數跨領域關注點。認為OOP不適合執行AOP是一個謬論。

這里有一些指針:

  • 不要依賴具體實例,而要依賴抽象。

  • 不要在同一個類中混用跨領域的關注點和業務邏輯。

  • 通過將帶有業務邏輯的類包裝在實現那些關注點的類(裝飾器)中來添加橫切關注點。

  • 在設計中找到常見的工件,并對其進行平均建模,最好使用相同類型的抽象??纯催@個和這個,例如。

當您有了正確的抽象之后,向系統添加新的橫切關注點只是編寫一個新的裝飾器類并將其包裝在正確的實現上。如果抽象是通用的,則可以將單個裝飾器包裝在一大類類中(這正是AOP的目的)。

盡管諸如動態代理和代碼編織之類的技術可以使設計較差的應用程序變得更容易,但對于好的設計,確實沒有其他選擇。遲早您會被燙傷的。但這并不意味著不應使用動態代理生成和代碼編織。但是,如果沒有適當的應用程序設計,那么即使是那些技術也只能提供很少的幫助。


查看完整回答
反對 回復 2019-11-23
  • 3 回答
  • 0 關注
  • 1182 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號