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

吉安做网站公司搭建一个网站

吉安做网站公司,搭建一个网站,asp网站下载,wordpress百度小程序插件1.意图 抽象与实现相分离,使之相互独立,任何一方扩展都不会影响到另外一方,适用于抽象不希望跟实现有个固定绑定关系。 2.模式类型 桥接模式是结构性对象设计模式 3.UML 4.优缺点 优点: 提高了系统的可扩展性。比如&#xff0c…

1.意图

        抽象与实现相分离,使之相互独立,任何一方扩展都不会影响到另外一方,适用于抽象不希望跟实现有个固定绑定关系。

2.模式类型

        桥接模式是结构性对象设计模式

3.UML

                        

4.优缺点

优点:

        提高了系统的可扩展性。比如,抽象部分和实现部分可以独立扩展,修改其中一个不会影响另一个。同时,符合开闭原则,因为新增抽象或实现都不需要修改现有代码。另外,桥接模式可以替代多层继承结构,因为继承可能会导致类爆炸,而桥接模式通过组合代替继承,更灵活。

缺点:

        1.设计复杂度增加,需要准确识别系统中独立变化的维度,避免继承层次过深。

        2.过度设计风险上升,若维度变化不明确,可能引入不必要的复杂性。     

5.适用场景

        业务场景需要多维度扩展

        如上文中的图形渲染案例,抽象渲染器,图形,之后再进行实现,如多种图形和渲染,可以进行运行时切换相关渲染状态。另外如远程设备控制,抽象设备层,实现控制层面等。     

6.代码

#include <iostream>
#include <memory> // 用于智能指针// 实现化接口:Renderer
class Renderer {
public:virtual ~Renderer() = default; // 虚析构函数确保正确释放资源virtual void renderCircle(float radius) = 0; // 纯虚函数定义接口
};// 具体实现化:OpenGL 渲染器
class OpenGLRenderer : public Renderer {
public:void renderCircle(float radius) override {std::cout << "OpenGL渲染圆形,半径:" << radius << std::endl;}
};// 抽象化:图形基类
class Shape {
protected:std::shared_ptr<Renderer> renderer; // 通过智能指针持有实现化对象
public:Shape(std::shared_ptr<Renderer> renderer) : renderer(renderer) {}virtual ~Shape() = default; // 虚析构函数支持多态销毁virtual void draw() = 0;    // 纯虚函数定义抽象接口
};// 扩展抽象化:圆形
class Circle : public Shape {float radius; // 圆形的特有属性
public:Circle(std::shared_ptr<Renderer> renderer, float radius): Shape(renderer), radius(radius) {}void draw() override {renderer->renderCircle(radius); // 调用实现化接口的方法}
};// 使用示例
int main() {// 创建具体实现化对象(OpenGL 渲染器)auto openglRenderer = std::make_shared<OpenGLRenderer>();// 创建扩展抽象化对象(圆形),并关联实现化对象Circle circle(openglRenderer, 5.0f);// 调用接口绘制图形circle.draw();return 0;
}

以上就是桥接模式的笔记,欢迎随时交流!!! 

http://www.dtcms.com/wzjs/398980.html

相关文章:

  • 武汉哪里做网站推广平台收费标准
  • 花木网站建设企业建站免费模板
  • 游戏网站建设的目的免费seo在线优化
  • 电子商务网站规划与建设的论文广州品牌营销策划公司排名
  • 网站的功能模块数据分析师资格证书怎么考
  • 国外的包装设计网站淘宝客怎么做推广
  • 安徽弘泰建设管理有限公司网站惠州seo计费管理
  • 特微网站首页高端网站建设案例
  • 网站建设 响应式 北京推广软文模板
  • 亚马逊网网站建设规划报告关键词如何排名在首页
  • 怎么做国内网站吗新媒体运营培训课程
  • 工业设计专业是干什么的seo和sem是什么意思
  • 泉州定制网站建设企业网站建设的基本流程
  • 怎么用ps做网站前台美工新乡网站优化公司价格
  • 中山网站建设怎么样深圳网络推广服务是什么
  • mvc网站开发实例微信拓客的最新方法
  • 设计公司网站建设费用网络排名优化软件
  • 番禺网站优化seo培训教程视频
  • 品牌营销网站建设新产品推广策划方案
  • 网站建设方案书要写吗百度最新推广产品
  • 网站建设微信营销公司软文代写公司
  • 做网站用的大图重庆网络营销
  • 做餐厅logo用什么软件网站西地那非片说明书
  • 宁波正规网站建设使用方法青岛seo全网营销
  • 武汉网页模板建站东莞网络营销全网推广
  • 天津做美缝的网站深圳谷歌推广公司
  • 东莞整站优化推广公司找火速百度seo查询系统
  • 河南单位网站建设学生个人网页制作html代码
  • 武冈做网站凡科建站登录
  • 建设企业网站公司百度关键词优化多少钱