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

17一起做网站包包丽水城乡建设局网站

17一起做网站包包,丽水城乡建设局网站,摄影作品可以在哪些网站投稿,建设门户网站的目的和意义12-Python与设计模式–策略模式 一、客户消息通知 假设某司维护着一些客户资料#xff0c;需要在该司有新产品上市或者举行新活动时通知客户。现通知客户的方式有两 种#xff1a;短信通知、邮件通知。应如何设计该系统的客户通知部分#xff1f;为解决该问题#xff0c;…12-Python与设计模式–策略模式 一、客户消息通知 假设某司维护着一些客户资料需要在该司有新产品上市或者举行新活动时通知客户。现通知客户的方式有两 种短信通知、邮件通知。应如何设计该系统的客户通知部分为解决该问题我们先构造客户类 包括客户常用的联系方式和基本信息同时也包括要发送的内容。class customer:customer_namesnd_wayinfophoneemaildef setPhone(self,phone):self.phonephonedef setEmail(self,mail):self.emailmaildef getPhone(self):return self.phonedef getEmail(self):return self.emaildef setInfo(self,info):self.infoinfodef setName(self,name):self.customer_namenamedef setBrdWay(self,snd_way):self.snd_waysnd_waydef sndMsg(self):self.snd_way.send(self.info)snd_way向客户发送信息的方式该方式置为可设即可根据业务来进行策略的选择。 发送方式构建如下 class msgSender:dst_codedef setCode(self,code):self.dst_codecodedef send(self,info):pass class emailSender(msgSender):def send(self,info):print EMAIL_ADDRESS:%s EMAIL:%s%(self.dst_code,info) class textSender(msgSender):def send(self,info):print TEXT_CODE:%s EMAIL:%s%(self.dst_code,info)在业务场景中将发送方式作为策略根据需求进行发送。 if __name____main__:customer_xcustomer()customer_x.setName(CUSTOMER_X)customer_x.setPhone(10023456789)customer_x.setEmail(customer_xxmail.com)customer_x.setInfo(Welcome to our new party!)text_sendertextSender()text_sender.setCode(customer_x.getPhone())customer_x.setBrdWay(text_sender)customer_x.sndMsg()mail_senderemailSender()mail_sender.setCode(customer_x.getEmail())customer_x.setBrdWay(mail_sender)customer_x.sndMsg()结果打印如下 PHONE_NUMBER:10023456789 TEXT:Welcome to our new party! EMAIL_ADDRESS:customer_xxmail.com EMAIL:Welcome to our new party! 二、策略模式 策略模式定义如下定义一组算法将每个算法都封装起来并使他们之间可互换。以上述例子为例 customer类扮演的角色Context直接依赖抽象策略的接口在具体策略实现类中即可定义个性化的 策略方式且可以方便替换。上一节中我们介绍了桥接模式仔细比较一下桥接模式和策略模式如果把策略模式的Context设计 成抽象类和实现类的方式那么策略模式和桥接模式就可以划等号了。从类图看上去桥接模式比 策略模式多了对一种角色抽象角色的抽象。二者结构的高度同构也只能让我们从使用意图上 去区分两种模式桥接模式解决抽象角色和实现角色都可以扩展的问题而策略模式解决算法切换 和扩展的问题。 三、策略模式的优点和应用场景 优点 1、各个策略可以自由切换这也是依赖抽象类设计接口的好处之一 2、减少代码冗余 3、扩展性优秀移植方便使用灵活。应用场景 1、算法策略比较经常地需要被替换时可以使用策略模式。如现在超市前台会常遇到刷卡、某宝支付、某信支付等方式就可以参考策略模式。四、策略模式的缺点 1、项目比较庞大时策略可能比较多不便于维护 2、策略的使用方必须知道有哪些策略才能决定使用哪一个策略这与迪米特法则是相违背的。
http://www.sadfv.cn/news/300759/

相关文章:

  • 律师网站建设方案wordpress泽七
  • 布料市场做哪个网站好seo和sem推广
  • 门户网站建设方案ppt 百度文库网站每年需要续费吗
  • 用网盘做网站零食进货渠道网
  • 织梦网站下载西安建设网站的公司
  • 菜谱网站 源码网上租服务器价格表
  • 建设工程信息网站曲靖 曲靖网站建设软件(app)开发
  • 衡水市网站建设长沙 网站运营
  • 江西seo网站排名优化沈阳做网站哪家便宜
  • 企业网站如何seo做设计在哪个网站找图片
  • 无锡企业网站制作哪家比较好网站自适应手机端
  • 如何评价一个企业的网站建设咸宁网页设计
  • 海口网站开发找千素网百度大数据中心
  • 哈尔滨营销型网站制作百度seo关键词排名
  • 顺徳网站建设公司有哪些网站制作软件排名
  • 网站建设要实现的目标上饶网站制作
  • 敦煌壁画网站开发毕设论文网址导航哪个主页最好
  • 苏州微网站制作创做网站
  • 精神文明地方联盟网站建设学院门户网站建设必要性
  • 小组网站建设方案书.net 网站模板下载地址
  • 网站设计原型西安景点排名前十
  • 太原微网站建设今天31个省新增最新消息视频
  • 400选号网站源码windows 2003 wordpress
  • 有哪些教育网站做的比较好php网站开发实训指导书
  • 网站seo检测工具天眼查询企业信息官网电话
  • 网站开发计划书封面设计做调查问卷赚钱哪个网站好
  • 中国建设工程网站投标株洲网站建设网站
  • 搭建网站需要多少钱广元做网站
  • 织梦网站模板教程互联网产品运营
  • 小网站建设公司做网站时字幕怎么做