当前位置: 首页 > news >正文

小程序网站开发ppt模板素材免费

小程序网站开发,ppt模板素材免费,广州网站营销推广设计,初级程序员与网站开发一、概述 代理模式是一种结构型模式,在很多不同的场合具有广泛的分类和应用。其主要实现的思想是在客户端和真正要访问的对象之间引入一个 代理对象(间接层),于是,以往客户端对真正对象的访问现在变成了通过代理对…


一、概述
    代理模式是一种结构型模式,在很多不同的场合具有广泛的分类和应用。其主要实现的思想是在客户端和真正要访问的对象之间引入一个
代理对象(间接层),于是,以往客户端对真正对象的访问现在变成了通过代理对象进行访问,代理对象在这里起到了一个中介或者桥梁作用。
引入代理对象的目的主要是可以为客户端增加额外的功能、约束或者针对客户端的调用屏蔽一些复杂的细节问题。

二、基本概念与示例
    代理模式的实质是通过引入一个代理类来为原始类(被代理类)增加额外的能力,这些额外的能力可能是指一些新功能、新服务,也可能
是一些约束或者限制等。那么现在试着考虑一个例子,通过浏览器访问某个网站,最简单的方式就是在浏览器中输入网站的地址来直接访问。

class CWebAddr
{
public:
    virtual void visit() = 0;
    virtual ~CWebAddr(){}
};

class CWebAddr_Shopping : public CWebAddr
{
public:
    virtual void visit()
    {
        //访问购物网站复杂通信逻辑
        cout << "访问CWebAddr_Shopping购物网站" << endl;
    }
};

class CWebAddr_Video : public CWebAddr
{
public:
    virtual void visit()
    {
        //访问视频网站复杂通信逻辑
        cout << "访问CWebAddr_Video视频网站" << endl;
    }
};

//主函数
int main()
{
    CWebAddr *pShopping = new CWebAddr_Shopping();
    pShopping->visit();
    
    CWebAddr *pVideo = new CWebAddr_Video();
    pVideo->visit();
    
    delete pShopping;
    delete pVideo;
    
    return 0;
}

上述代码执行结果没问题,描述主要是直接访问某个或者某些网站,那么我们也可以引入代理类帮助我们访问这些网站,
针对以上代码做出调整:
class CWebAddrProxy : public CWebAddr
{
public:
    CWebAddrProxy(CWebAddr* pWebAddr) : m_webAddr(pWebAddr){}
    
public:
    virtual void visit()
    {    
        m_webAddr->visit();
    }
private:
    CWebAddr* m_webAddr;    
};

//主函数
int main()
{
    CWebAddr *pShopping = new CWebAddr_Shopping();
    CWebAddr *pVideo = new CWebAddr_Video();
    
    CWebAddrProxy *pWebproxy1 = new CWebAddrProxy(pShopping);
    pWebproxy1->visit();
    
    CWebAddrProxy *pWebproxy2 = new CWebAddrProxy(pVideo);
    pWebproxy2->visit();
        
    delete pShopping;
    delete pVideo;
    delete pWebproxy1;
    delete pWebproxy2;
    
    return 0;
}

三、代理模式定义与角色
    引入代理模式的定义:为其他对象提供一种代理,以控制对这个对象的访问。代理模式通过创建代理对象来代表真实对象,客户端操作代理
对象与操作真实对象并没有什么不同。当然,最核心、最本质的功能,最终还是需要代理对象操纵真实对象来完成。
代理模式UML图中涉及三个角色:
(1)Subject(抽象对象)。该类定义真实主题与代理主题的共同接口,这样,在真实主题的地方都可以使用代理主题。
(2)Proxy(代理主题)。该类内部包含了对真实主题的引用,从而可以对真实主题进行访问。代理主题中一般会提供与真实主题相同的接口,以
达到可以取代真实主题的目的。同时也可以对真实主题的访问进行约束和限制,也能够控制必要时的创建/删除真实主题。
(3)RealSubject(真实主题)定义代理主题代表的真实对象,真正的业务是在真实主题中实现的,客户端通过代理主题间接访问真实主题中的
接口。

四、代理模式的应用场合
    代理模式UML图分厂简单,总结起来也简单----在软件设计中,增加间接层来获取更大的灵活性和增加更多的控制。在实际中,代理模式可能
会在许多场合得到应用,并且其实现可能会非常复杂。
1)远程代理
2)虚拟代理
3)保护代理
4)缓存/缓冲代理
5)智能引用代理
6)写时复制优化代理

http://www.yayakq.cn/news/369102/

相关文章:

  • 怎么登陆自己的公司网站网上做代卖的网站
  • 河南省建设部省厅网站乌市做网站的公司
  • 简单网站制作教程网页设计与制作思考建议200字
  • 站长网站大全乔拓云微信小程序官网
  • 中职示范校建设网站甬城通可以在线充值吗
  • 郑州营销网站建设长沙宁乡建设网站
  • 手机百度官网首页seo自学网app
  • 阳山县网站住房和建设局青岛设计网站的公司哪家好
  • 网站新闻专题怎么做南昌网站维护制作
  • 毕业季网站如何做网页装修设计网站排行榜
  • 做网站虚拟主机好还是最新军事战况
  • 做网站的运营维护都要学什么几年前我为客户建设网站
  • 村官 举措 村级网站建设香河做网站公司
  • 公司网站建设的要点wordpress读取速度慢
  • 搭建个网站需要多少钱小程序订单管理系统
  • 国内建筑网站网站admin目录名怎么改
  • php网站开发实例 电子书手机网站开发要哪些人
  • 本地建设网站软件网站页面相关产品链接怎么做
  • 自助建设分销商城网站2014网站备案
  • dw个人网站设计模板免费瓜子二手车网站开发
  • PHP网站开发都需要学什么可以兼职做设计的网站
  • 网站世界排名怎么做价格低不是干粉灭火器的优点
  • 租赁服务器做电影网站网站研发流程
  • 有域名 有主机 怎么建设网站什么是互联网行业
  • 网页设计公司业绩介绍现在网站如何做优化
  • 多个网站建站免费换友情链接
  • 缝纫网站做洗衣机罩微网站建设价格对比
  • 中国核工业第五建设公司网站wordpress 文章链接地址
  • 品牌网站设计公司哪家wordpress整合ldap
  • 广西建设协会网站首页aaa免费服务器