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

app开发流程大致包括关键词优化seo排名

app开发流程大致包括,关键词优化seo排名,建一个论坛网站怎么建,高端网站建设那公司好Decorator 动机 在某些情况下我们可能会“过度地使用继承来扩展对象的功能”, 由于继承为类型引入的静态特质,使得这种扩展方式缺乏灵活性; 并且随着子类的增多(扩展功能的增多),各种子类的组合&#xff…

Decorator

动机
  • 在某些情况下我们可能会“过度地使用继承来扩展对象的功能”, 由于继承为类型引入的静态特质,使得这种扩展方式缺乏灵活性; 并且随着子类的增多(扩展功能的增多),各种子类的组合(扩展 功能的组合)会导致更多子类的膨胀
  • 如何使”对象功能的扩展“能够根据需要动态实现,同时避免”扩展功能的增多“带来的子类膨胀问题,从而使得任何”功能扩展变化“所导致的影响降到最低?
模式定义

动态(组合)地给一个对象增加一些额外的职责。就增加功能而言,Decorator模式比生成子类(继承)更为灵活(消除重复代码 & 减少子类个数)。

在这里插入图片描述

#include <iostream>class Component
{
public:virtual ~Component() {}virtual void operation() = 0;// ...
};class ConcreteComponent : public Component
{
public:~ConcreteComponent() {}void operation(){std::cout << "Concrete Component operation" << std::endl;}// ...
};class Decorator : public Component // is-a 为了完善接口规范
{
private:Component *component; // has-a 为了将来具体的实现public:~Decorator() {}Decorator(Component *c) : component(c) {}virtual void operation(){component->operation();}// ...
};class ConcreteDecoratorA : public Decorator
{
public:ConcreteDecoratorA(Component *c) : Decorator(c) {}void operation(){Decorator::operation();std::cout << "Decorator A" << std::endl;}// ...
};class ConcreteDecoratorB : public Decorator
{
public:ConcreteDecoratorB(Component *c) : Decorator(c) {}void operation(){Decorator::operation();std::cout << "Decorator B" << std::endl;}// ...
};int main()
{ConcreteComponent *cc = new ConcreteComponent();ConcreteDecoratorB *db = new ConcreteDecoratorB(cc);ConcreteDecoratorA *da = new ConcreteDecoratorA(db);Component *component = da;component->operation(); delete da;delete db;delete cc;return 0;
}
/*
Concrete Component operation
Decorator B
Decorator A
*/
何时场景
  • 动态且透明地向各个对象添加职责,即不影响其他对象
  • 对于可以撤销的责任
  • 当通过子类化扩展不切实际时
总结
  • 通过采用组合而非继承的手法, Decorator模式实现了在运行时动态扩展对象功能的能力,而且可以根据需要扩展多个功能。避免 了使用继承带来的“灵活性差”和“多子类衍生问题
  • Decorator类在接口上表现为is-a Component的继承关系,即Decorator类继承了Component类所具有的接口(为了完善接口规范)。但在实现上又表现为has-a Component的组合关系,即Decorator类又使用了另外一个Component类(为了将来的具体实现)
  • Decorator模式的目的并非解决“多子类衍生的多继承”问题, Decorator模式应用的要点在于解决“主体类在多个方向上的扩展功能”——是为“装饰”的含义。
http://www.khdw.cn/news/36610.html

相关文章:

  • 辽宁建设厅查询网站seo专员
  • 政府网站建设法律法规域名解析ip地址查询
  • 用手机做网站好学吗百度搜索引擎优化
  • 做电锯电音的网站营销管理制度范本
  • 阿里云做网站可以吗西安seo网站推广优化
  • 哈尔滨站建好了吗微信crm系统软件
  • 网页游戏广告平台网站建设今日全国最新疫情通报
  • 苹果应用商店五种关键词优化工具
  • 怎么查看网站访问速度软文投放平台有哪些
  • 支付网站怎么做百度服务中心人工24小时电话
  • 运用asp做购物网站的心得青岛疫情最新情况
  • 网站开发职业规划网店运营
  • 房县建设局网站淄博seo网络公司
  • 商务网站建设方案厦门人才网597人才网
  • wordpress架设教程视频seo实训报告
  • 一个域名可以建设几个网站个人网上卖货的平台
  • 石家庄外贸做网站网络广告营销的特点
  • 服装销售网站设计与制作cba最新积分榜
  • 大型企业网站优化如何推广好一个产品
  • 安庆市城乡建设委员会网站seo实战培训机构
  • 海城网站制作建设在百度怎么免费发布广告
  • 淘宝做轮播广告哪个网站好凡科建站怎么收费
  • 搜索引擎网站推广怎么做网络营销有哪些模式
  • 网站更换空间对优化的影响谷歌官网
  • 南京做网站的搜索词分析
  • 企业微信网站怎么做seo软件视频教程
  • 济南网站建设维护公司sem优化软件选哪家
  • 县级网站建设seo关键词排名
  • 轻量级数据库wordpress德州网站建设优化
  • 网站找到后台了 如何破解账号 密码高端网站建设专业公司