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

做个外贸网站多少钱零售客户电商网站

做个外贸网站多少钱,零售客户电商网站,做婚礼效果图的网站有哪些,wordpress内容构建器结构型 适配器模式#xff0c;代理模式#xff0c;桥接模式#xff0c;装饰器模式#xff0c;外观模式#xff0c;组合模式#xff0c;享元模式#xff0c; 单一职责避免子类爆炸Bridge 模式对象的实现Decorator 模式对对象的职责#xff0c;不生成子类接口隔离Adapt…结构型 适配器模式代理模式桥接模式装饰器模式外观模式组合模式享元模式 单一职责避免子类爆炸Bridge 模式对象的实现Decorator 模式对对象的职责不生成子类接口隔离Adapter 模式针对对象的接口Facade 模式对一个子系统的接口Proxy 模式如何访问一个对象该对象的位置数据结构Composite 模式一个对象的结构和组成对象性能Flyweight 模式对象的存储开销 单一职责(避免子类爆炸) subclass explode Bridge 桥接模式 概念 桥接模式和装饰器模式一样解决因为没有遵循单一职责原则而导致的子类数量爆炸。 装饰器模式 组合且继承 子类可能会调用其他子类的实现。 桥接模式 组合而不继承。 实现类 不会调用其他子类的实现 实现类对应拆分前的子类实际上由于没有继承所以这里叫实现类更好。 核心思想都是一样的组合优于继承单一职责。 具体来说1nn*m 个子类变为 1 纯虚 ( 1通用实现) n iml实现类 m个应用场景 1 纯虚接口n 平台实现Impm 业务抽象(特定平台不同版本) (Imp平台实现作为参数 拼装) 业务抽象不需要继承接口或者平台实现持有的基类的指针运行时会指向iml平台实现实现类。 桥接模式实现了抽象化与实现化的脱耦。他们两个互相独立不会影响到对方。对于两个独立变化的维度使用桥接模式再适合不过了。分离抽象接口及其实现部分。提高了比继承更好的解决方案 code bridge.h #include cstdio #include iostreamclass AbstractionImp { public:virtual void Operation_RunPythonInTerminal() 0; };// ConcreteAbstractionImp class ConcreteAbstractionImp_Python2 : public AbstractionImp { public:void Operation_RunPythonInTerminal() {printf(start python2 \n);} };class ConcreteAbstractionImp_Python3 : public AbstractionImp { public:void Operation_RunPythonInTerminal() {printf(start python3 \n);} }; bridge.cpp #include bridge_Imp.h // class AbstractionImp;class Abstraction { public:AbstractionImp* mImp nullptr;virtual void Operation_RunPythonInTerminal() 0; };class RefinedAbstraction_Windows : public Abstraction{ public:void Operation_RunPythonInTerminal() {printf(windows start WSL\n);if (mImp)mImp-Operation_RunPythonInTerminal();} };class RefinedAbstraction_Linux : public Abstraction{ public:void Operation_RunPythonInTerminal() {printf(linux start cmd\n);if (mImp)mImp-Operation_RunPythonInTerminal();} };int main() {Abstraction* mOS new RefinedAbstraction_Windows;AbstractionImp* mPython new ConcreteAbstractionImp_Python3;mOS-mImp mPython;mOS-Operation_RunPythonInTerminal();free(mPython);mPython new ConcreteAbstractionImp_Python2;mOS-mImp mPython;mOS-Operation_RunPythonInTerminal();free(mPython);free(mOS);return 0; }Decorator 装饰器 概念 单一职责避免了子类的无限制膨胀消除重复代码兼具开闭选择。 特征 子类继承基类 多继承多子类衍生 时的一个解决方法 子类持有基类的指针。 根据里氏替换可以调用基类的同名方法并在前后加上子类的操作。组合优于继承。 应用于 主体类多个方向上的扩展功能 主体操作和扩展操作应该分开分支继承。 扩展操作通过持有的主体操作的指针造成附加动作之后 调用主体操作。 code #include cstdio #include iostream #include iostream #include stringclass DecoratorBase { public:DecoratorBase* mImp nullptr;virtual void Operation() 0; };class ImpParty : public DecoratorBase { public:std::string bro ;ImpParty(std::string bro) {this-bro bro;}void setBro(std::string name) {this-bro name;}void Operation() {printf(Party start, hi %s\n, bro.c_str());if (mImp) {printf(lets drink!\n);mImp-Operation();}} };class ImpSoftDrink : public DecoratorBase { public:std::string softdrink ;ImpSoftDrink(std::string softdrink) {this-softdrink softdrink;}void Operation() {printf(lets drink %s, softdrink.c_str());} };int main() {ImpParty* mParty new ImpParty(John);ImpSoftDrink* mDrink new ImpSoftDrink(cola);mParty-mImp mDrink;mParty-Operation();delete mDrink;delete mParty;return 0; }数据结构 composite 组合模式 概念 将对象组合成树状结构树形结构不暴露给外界。 Compoment 树节点 composite 子类 持有 一个子类的链表 add remove方法修改 其中的子类的链表 process方法执行子类链表中所有子类的process函数。直到叶子节点 叶子节点 leaf 没有链表process函数执行功能。 接口隔离 其它人的代码 Adoptor 适配器模式 概念 为了完成某项工作购买了一个第三方的库来加快开发。这就带来了一个问题我们在应用程序中已经设计好了接口与这个第三方提供的接口不一致为了使得这些接口不兼容的类不能在一起工作可以在一起工作了Adapter 模式提供了将一个类第三方库的接口转化希望的接口。 Itarget新实现的接口。adapter新实现。adaptee被适配的旧类 适配器模式分为类模式和对象模式。 常用做法。对象模式对象适配器 adapter采用组合原有接口类的方式 持有adaptee组合用于实现。 public继承Itarget 接口。 不常用做法。类模式类适配器 adapter采用继承原有接口类的方式 protect继承adaptee用于实现。 public继承Itarget接口。(不灵活 继承的方案不灵活 类的多继承在cpp之外的语言压根就不支持) code 继承 #include cstdio class Target_rob { public:virtual int giveMeYrMoney() 0; };class Adaptee_robInFrance { public:int doRob() {printf(Levez les mains, donnez moi votre argent!\n);return 1000;} };class Adaptor_rob : public Target_rob, Adaptee_robInFrance { public:int giveMeYrMoney() {return doRob();} };int main() {Target_rob* mClinet dynamic_castTarget_rob*(new Adaptor_rob());int money mClinet-giveMeYrMoney();printf(we got %d RMB!, money); } code 组合 #include cstdio #include cstdlib class Adaptee_rob { public:virtual int doRob() 0; }; class Adaptee_robInFrance : public Adaptee_rob { public:int doRob() {printf(Levez les mains, donnez moi votre argent!\n);return 1000;} };class Target_rob { public:Adaptee_rob* mAdaptee nullptr;virtual int giveMeYrMoney() 0; };class Adaptor_rob : public Target_rob { public:int giveMeYrMoney() {int money 0;if (mAdaptee) {money mAdaptee-doRob();} else {printf(we got nothing \n);}return money;} };int main() {Target_rob* mClinet dynamic_castTarget_rob*(new Adaptor_rob());Adaptee_rob* mRobber dynamic_castAdaptee_rob*(new Adaptee_robInFrance());mClinet-mAdaptee mRobber;int money mClinet-giveMeYrMoney();printf(we got %d RMB!, money);return 0; }facade 门面模式 facad 门面模式 解欧系统见的交互 框架层面没有具体的实例代码。对内 高内聚 对外应该松耦合。 封装内部可能高度复杂 高度耦合的盒子。例如安卓的vendor hal。数据访问相关sql等等。 Proxy 代理模式 在不失去透明操作对象的同时控制管理这些对象内部特有的复杂性 对其他对象特供一种代理以控制 (隔离 使用接口)对这个接口的访问。 对象创建开销大某些操作需要安全控制需要进程外的访问(分布式等) 对象性能 Flyweight 享元模式 内存池每个字的字体单例模式从容器中取出。 实现 右值引用 复制clone原型模式 ––– 接口隔离 ––– List item
http://www.hkea.cn/news/14582784/

相关文章:

  • 文昌网站 做炸饺子无极网页游戏
  • 盘锦网站制作公司哪些网站容易做
  • 网站备案弊端网站开发 售后服务协议
  • 用vs2010做的网站的源码yy直播助手
  • 做公众号必备的网站广告设计培训机构哪家好
  • 潍坊网站建设wancet深圳龙华鸿宇大厦网站建设
  • nginx网站301重定向怎么做文章网站如何与压力做
  • 企业网站流量预估软文广告案例
  • 网站建设服务公司有用吗国际知名设计公司的新方案
  • 哪里有做外贸网站的创业园区网站建设
  • 创业网站模板免费下载好看的论坛网站模板
  • 公司网站的建设心得网站如何备案icp
  • 网站布局设计规则广州装修公司口碑最好的是哪家
  • 邯郸企业建网站百度c2c平台
  • 手机商场网站制作wordpress博文
  • 有创意的30个网站python在线编程器
  • 电子商务网站建设与管理试卷wordpress上传大文件
  • 网站的优化什么做memcached插件wordpress
  • 网站推广平台wordpress ap
  • 代挂QQ建设网站wordpress增加下载量显示
  • 国内最好的网站服务器福州小型网站建设
  • 浙江建站优化品牌相册网站建设方案
  • 网站开发绑定qq移动网站开发认证
  • 网站开发vs平台的功能嘉定建设厅网站
  • 济南好的网站建设公司哪家好wordpress 调用画廊
  • 建购物网站需要多少钱没有网站可以备案吗
  • 网站悬浮微信二维码olam wordpress
  • 做网站麻烦不win 2008 iis建立网站
  • 三角网站建设交换链接营销
  • 专注高端网站设计wordpress没有function.php