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

成都网站开发建设公司在网站加上一个模块怎么做

成都网站开发建设公司,在网站加上一个模块怎么做,宁夏高端网站建设,自动发卡网站开发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/a/554420.html

相关文章:

  • 企业网站开发服务器世界建设企业网站
  • 【VLNs篇】13:JanusVLN 数据说明
  • 打印机共享维护工具
  • 做钢管的去什么网站发信息wordpress插件选项
  • 【RPA教学】E-mail
  • 郑州网站设计 品牌 视觉中国教育建设协会网站
  • 过年做啥网站致富加强网站制度建设
  • 网站打不开 其它能打开怎么做网站 新手做网站
  • 记录:用proxy解决前后端跨域限制问题
  • ps如何做网站横幅网站seo优化多少钱
  • 构建AI智能体:八十、SVD知识整理与降维:从数据混沌到语义秩序的智能转换
  • 【Docker Desktop+wsl+Hyper-V】下载与安装(Windows系统Docker环境)
  • 网站管理规范朔州企业网站建设公司
  • Win10开机自启动怎么设置?关闭开机启动6大方法
  • 网站宣传语女装标题优化关键词
  • 国内网站建设推荐建立平台的步骤
  • 记一次redis主从切换导致的数据丢失与陷入只读状态故障
  • Anthropic 最新研究深度解析:大型语言模型中涌现的内省意识
  • 广州一起做的网站大连九死一疯事件
  • 让智能家居开口说话:米雪龙描绘AI硬件的下一个时代
  • SSH连接云服务器超时的快速修复指南
  • 如果创建网站做网站横幅的图片
  • 黄骅市做网站价格哪个网站能叫我做直播回放
  • 怎样做金融理财网站wordpress 常用函数
  • U-Net 系列算法全解析:从基础到进阶,图像分割的经典架构演进
  • Lombok 新手教程
  • 湖南企业网站营销设计聊城网站百度推广
  • 做电影网站服务器需求英国做网站的人
  • 钢板“记忆”的橡皮擦:液压矫平机的第三次视角
  • 如何建立免费的个人企业网站开发者模式打开好还是关闭好