代理人設計模式,是在不影響商業邏輯物件本體的前提下,對商業邏輯物件,
添加額外非商業邏輯的功能。具體的添加方式,是另外定義一個代理物件,
代理物件本身包含了商業邏輯物件,並另外添加額外功能。
這樣可以避免為了添加額外功能而去動到商業邏輯本身,
這樣的話也可以將商業邏輯封裝在另一物件,做到控管權限的效果。
這樣的設計模式即為代理人設計模式。
-----------------------------------
那麼AOP,這個有別於OOP的程式設計手法,要如何應用這個設計模式呢?
就是對商業邏輯的流程進行橫切,橫切面的前後來添加額外的功能,
橫切面本身是商業邏輯的一部份,要在其前後添加額外功能,
那就宣告另一物件,其本身包含了這個橫切面與額外功能。
這個物件即為代理物件,這樣即可實作代理人設計模式。
-----------------------------------
而Spring AOP,使用聲明式的語法,大幅降低了實作AOP的難度。
只需宣告定義代理物件,並將代理物件註冊到註冊檔即可。
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.229.138.137 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/talk/M.1710860328.A.8F1.html