最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

設(shè)計(jì)模式:代理模式

2021-04-18 18:16 作者:做架構(gòu)師不做框架師  | 我要投稿

什么是代理模式?

代理模式(英文:Proxy Pattern),為某對(duì)象提供一種代理以控制對(duì)該對(duì)象的訪(fǎng)問(wèn)。即客戶(hù)端通過(guò)代理間接地訪(fǎng)問(wèn)該對(duì)象,從而限制、增強(qiáng)或修改該對(duì)象的一些特性。

一句話(huà)歸納

找人辦事,增強(qiáng)職責(zé)。

代碼示例

現(xiàn)在有一個(gè)抽象類(lèi)定義了要做什么,有一個(gè)真正的實(shí)現(xiàn)類(lèi),我通過(guò)新創(chuàng)建一個(gè)代理類(lèi)在該類(lèi)的方法執(zhí)行時(shí)對(duì)其進(jìn)行了加工處理,而不去改變?cè)械臉I(yè)務(wù)代碼(比如:加日志、事務(wù)等等)。

適用性

以下場(chǎng)景我建議你考慮使用:

  • 代理模式的使用場(chǎng)景非常多,Spring AOP,這是一個(gè)非常典型的動(dòng)態(tài)代理;

  • 業(yè)務(wù)代碼和非業(yè)務(wù)代碼進(jìn)行分離(比如事務(wù)、日志);

  • 想在訪(fǎng)問(wèn)一個(gè)類(lèi)時(shí)做一些控制的時(shí)候。

局限性

以下場(chǎng)景我建議你謹(jǐn)慎使用:

  • 由于在調(diào)用真實(shí)類(lèi)時(shí)中間加了一層代理,性能會(huì)慢一些。

  • 有些代理模式設(shè)計(jì)得非常的復(fù)雜,需要額外的工作。

靜態(tài)代理和動(dòng)態(tài)代理

根據(jù)代理的創(chuàng)建時(shí)期,代理模式分為靜態(tài)代理和動(dòng)態(tài)代理。

  • 靜態(tài):由程序員創(chuàng)建代理類(lèi)或特定工具自動(dòng)生成源代碼再對(duì)其編譯,在程序運(yùn)行前代理類(lèi)的 .class 文件就已經(jīng)存在了。

  • 動(dòng)態(tài):在程序運(yùn)行時(shí),運(yùn)用反射機(jī)制動(dòng)態(tài)創(chuàng)建而成

寫(xiě)在最后

最后,好兄弟,記得點(diǎn)贊,關(guān)注,謝謝。


設(shè)計(jì)模式:代理模式的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
泰来县| 佛学| 伽师县| 高安市| 长顺县| 沈阳市| 岗巴县| 大安市| 广昌县| 永平县| 故城县| 定西市| 牙克石市| 林芝县| 三门县| 苏尼特左旗| 新泰市| 顺平县| 博白县| 宁城县| 清涧县| 徐州市| 屏山县| 井陉县| 鄱阳县| 莱阳市| 潞西市| 井研县| 天镇县| 武安市| 铜陵市| 汤阴县| 雅江县| 化隆| 左权县| 大化| 庄河市| 玉树县| 隆尧县| 南充市| 毕节市|