国产亚洲精品福利在线无卡一,国产精久久一区二区三区,亚洲精品无码国模,精品久久久久久无码专区不卡

當(dāng)前位置: 首頁 > news >正文

網(wǎng)頁設(shè)計與制作視頻seo網(wǎng)絡(luò)推廣優(yōu)勢

網(wǎng)頁設(shè)計與制作視頻,seo網(wǎng)絡(luò)推廣優(yōu)勢,新會網(wǎng)站建設(shè),小型企業(yè)網(wǎng)站開發(fā)現(xiàn)狀代理模式是一種結(jié)構(gòu)型設(shè)計模式,為其他對象提供一種代理以控制對這個對象的訪問。在某些情況下,一個對象不適合或者無法引用另一個對象,這個時候就需要一個代理對象充當(dāng)客戶端和目標(biāo)對象之間的中介。 代理模式就是代理對象具備目標(biāo)對象的所有…

代理模式是一種結(jié)構(gòu)型設(shè)計模式,為其他對象提供一種代理以控制對這個對象的訪問。在某些情況下,一個對象不適合或者無法引用另一個對象,這個時候就需要一個代理對象充當(dāng)客戶端和目標(biāo)對象之間的中介。

代理模式就是代理對象具備目標(biāo)對象的所有功能,并代替真實對象完成相應(yīng)操作,在操作前或操作后進(jìn)行功能增強(qiáng)的工作。這也是代理對象和目標(biāo)對象之間的區(qū)別。

舉例:
以租房為例,租客想要租房,需要經(jīng)過房屋中介審核租客資料,審核通過之后才可以通知房東進(jìn)行租房。

// 抽象房東類
class Landlord
{
public:virtual ~Landlord() {}virtual void Rent() = 0;
};// 具體房東類
class RealLandlord: public Landlord
{
public:virtual void Rent() override{std::cout << "房東出租房屋" << std::endl;}
};// 中介代理
class EstateAgent: public Landlord
{
public:EstateAgent(){}virtual void Rent() override{if (CheckTenant()){std::cout << "中介已代理,接受租客請求" << std::endl;if (!landLord_)landLord_ = std::make_shared<RealLandlord>();landLord_->Rent();std::cout << "中介代理,簽訂租約" << std::endl;}elsestd::cout << "抱歉,您的資質(zhì)審核未通過" << std::endl;}private:bool CheckTenant(){// 檢查租客資質(zhì)// ....return true;	// 假設(shè)檢查成功}private:std::shared_ptr<Landlord> landLord_;
};

測試:

void TestProxy()
{std::shared_ptr<Landlord> agent = std::make_shared<EstateAgent>();agent->Rent();
}

我們創(chuàng)建一個抽象房東類Landlord,定義了一個出租房屋的方法,一個真實目標(biāo)對象去實現(xiàn)這個方法。還創(chuàng)建了一個中介代理類EstateAgent代替真實目標(biāo)對象完成功能。

在中介代理類中,我們可以在出租房屋前后進(jìn)行一些增強(qiáng)操作,比如檢查租客資質(zhì)等。

客戶端方面,我們只需要創(chuàng)建一個代理對象,它會代替真實對象完成功能,客戶端就不需要關(guān)心真實對象的創(chuàng)建邏輯。

代理模式遵循的設(shè)計原則:

1、單一職責(zé)原則:代理模式在客戶端和實際對象之間額外增加了一個代理對象,使得代理對象具有更多的責(zé)任,而實際對象只需要專注自己的職責(zé)即可。

2、開放封閉原則:由于代理模式增加了代理類這一角色,所以可以在不修改現(xiàn)有代碼的情況下添加新的代理類達(dá)到添加新功能的需求。比如上述例子我們可以添加一個新的代理類,這個代理類的職責(zé)是只檢查房東資質(zhì)。該模式使得對實際對象的訪問和控制可以在代理層進(jìn)行變化和擴(kuò)展。

3、依賴倒置原則:代理模式通過引入抽象的代理接口,將客戶端從實際對象解耦,客戶端只需要面向代理接口編程,不需要直接依賴實際對象的具體實現(xiàn)。

優(yōu)點:

1、隱藏對象復(fù)雜性:代理對象封裝了實際對象的復(fù)雜性,使得客戶端對實際對象的操作變得簡單

2、提供額外的功能:代理對象可以在實際對象的基礎(chǔ)上添加額外的功能,比如日志記錄、權(quán)限驗證、緩存等。

3、提供性能:代理模式允許延遲加載對象(在使用的時候才加載對象),從而避免了資源消耗和提高性能。

4、保護(hù)實際對象:代理對象將實際對象的功能封裝起來,客戶端就不能對實際對象直接訪問

5、提供遠(yuǎn)程訪問能力:通過代理模式,客戶端可以訪問遠(yuǎn)程對象,比如從而實現(xiàn)分布式系統(tǒng)或系統(tǒng)調(diào)用。

缺點:

1、會增加代碼復(fù)雜性:代理模式增加了代理類作為客戶端和實際對象之間的中間層。

2、可能引起性能損失:在某些情況下,代理模式可能會引入額外的開銷,導(dǎo)致性能略有下降。

為什么會引起性能損失:

1、遠(yuǎn)程代理:當(dāng)使用遠(yuǎn)程代理時,由于需要通過網(wǎng)絡(luò)傳輸數(shù)據(jù),可能會引起性能下降。因此,應(yīng)該盡量減少網(wǎng)絡(luò)通信量,使用緩存或其他優(yōu)化技術(shù)。

2、虛擬代理:當(dāng)使用虛擬代理時,由于需要創(chuàng)建和初始化代理對象,可能會引起一定的性能下降。因此,應(yīng)該盡量減少代理對象創(chuàng)建的時間和開銷。

3、安全代理:當(dāng)使用安全代理時,由于需要進(jìn)行權(quán)限驗證和訪問控制,可能會引起一定的性能下降。因此,應(yīng)該盡量采用高效的算法和數(shù)據(jù)結(jié)構(gòu),減少耗時的操作。

4、智能引用代理:當(dāng)使用智能引用代理時,由于需要記錄對象的使用情況和狀態(tài),可能會引起一定的性能下降。因此,應(yīng)該盡量減少對代理對象的狀態(tài)記錄和操作。

5、延遲加載代理:當(dāng)使用延遲加載代理時,由于需要推遲實際對象的創(chuàng)建或加載,可能會引起一定的性能下降。因此,應(yīng)該盡量減少延遲加載的時間和開銷,避免對用戶體驗造成影響。

http://aloenet.com.cn/news/39057.html

相關(guān)文章:

  • 安平誰做網(wǎng)站好如何推廣自己的業(yè)務(wù)
  • 網(wǎng)站開發(fā) 方案搜索引擎優(yōu)化課程總結(jié)
  • 網(wǎng)站鏈接的常見形式如何把品牌推廣出去
  • 備案網(wǎng)站的黑名單完整的品牌推廣方案
  • 開源企業(yè)網(wǎng)站建設(shè)系統(tǒng)seo網(wǎng)站優(yōu)化教程
  • 公眾號和網(wǎng)站先做哪個廣告投放平臺
  • 建設(shè)網(wǎng)站需要的軟硬件重慶公司seo
  • 南昌做網(wǎng)站優(yōu)化價格愛站工具包官網(wǎng)下載
  • 網(wǎng)站開發(fā)學(xué)什么編程語言怎么開網(wǎng)店
  • 游戲代理300元一天網(wǎng)絡(luò)seo是什么意思
  • 深圳市南山區(qū)住房和建設(shè)局官方網(wǎng)站抖音seo排名優(yōu)化公司
  • 做請?zhí)W(wǎng)站b站推廣app大全
  • 上饒商城網(wǎng)站建設(shè)百度識圖在線使用
  • 創(chuàng)立一個網(wǎng)站得多少錢整站優(yōu)化關(guān)鍵詞推廣
  • 萬戶網(wǎng)絡(luò)騙局泉州百度推廣排名優(yōu)化
  • 體現(xiàn)網(wǎng)站特色全球熱門網(wǎng)站排名
  • 建材網(wǎng)站建設(shè) 南寧sem代運營托管公司
  • 中山制作企業(yè)網(wǎng)站廣州網(wǎng)站制作服務(wù)
  • 公司介紹網(wǎng)站怎么做只要做好關(guān)鍵詞優(yōu)化
  • 商城小程序定制公司搜索引擎優(yōu)化的重要性
  • 收錄網(wǎng)站是怎么做的網(wǎng)絡(luò)營銷首先要
  • 織夢網(wǎng)站在css中怎樣做導(dǎo)航關(guān)鍵詞優(yōu)化公司靠譜推薦
  • 2019做網(wǎng)站需要營業(yè)執(zhí)照嗎2022最好的百度seo
  • 網(wǎng)頁源代碼搜索關(guān)鍵字如何seo推廣
  • php網(wǎng)站開發(fā)過程免費下載b站視頻軟件
  • 云南昆明做網(wǎng)站西安競價托管公司
  • 做網(wǎng)站需要什么基礎(chǔ)百度開發(fā)者平臺
  • 網(wǎng)站彈窗客服怎樣搭建自己的網(wǎng)站
  • 鹽城微網(wǎng)站建設(shè)廣州王牌seo
  • 開發(fā)一個網(wǎng)站的步驟推廣軟件賺錢的app