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

样asp.net做网站山西seo基础教程

样asp.net做网站,山西seo基础教程,平谷青岛网站建设,wordpress 图片浏览器相关文章设计模式系列 1.建造者模式简介 定义 建造者模式#xff08;builder#xff09;#xff0c;将一个复杂对象的构建与它的表示分离#xff0c;使得同样的构建过程可以创建不同的表示。 简介 建造者模式#xff08;builder#xff09;是创建一个复杂对象的创建型…相关文章设计模式系列 1.建造者模式简介 定义 建造者模式builder将一个复杂对象的构建与它的表示分离使得同样的构建过程可以创建不同的表示。 简介 建造者模式builder是创建一个复杂对象的创建型模式将构建复杂对象的过程和它的部件解耦使得构建过程和部件的表示分离开来。 例如我们要DIY一个台式机电脑我们找到DIY商家我们可以要求这台电脑的cpu或者主板或者其他的部件都是什么牌子的什么配置的这些部件是我们可以根据我们的需求来变化的但是这些部件组装成电脑的过程是一样的我们不需要知道这些部件是怎样组装成电脑的我们只需要提供部件的牌子和配置就可以了。对于这种情况我们就可以采用建造者模式将部件和组装过程分离使得构建过程和部件都可以自由拓展两者之间的耦合也降到最低。 建造者模式结构图 Dirextor: 指挥者类用于统一组装流程Builder抽象Builder类规范产品的组建一般是由子类实现。ConcreteBulider: 抽象Builder类的实现类实现抽象Builder类定义的所有方法并且返回一个组建好的对象Product: 产品类 2.建造者模式简单实现 这里我们就用DIY组装电脑的例子来实现一下建造者模式。 创建产品类 我要组装一台电脑电脑被抽象为Computer类它有三个部件:CPU 、主板和内存。并在里面提供了三个方法分别用来设置CPU 、主板和内存 public class Computer {private String mCpu;private String mMainboard;private String mRam;public void setmCpu(String mCpu) {this.mCpu mCpu;}public void setmMainboard(String mMainboard) {this.mMainboard mMainboard;}public void setmRam(String mRam) {this.mRam mRam;} } 创建Builder类规范产品的组建 商家组装电脑有一套组装方法的模版就是一个抽象的Builder类,里面提供了安装CPU、主板和内存的方法以及组装成电脑的create方法 public abstract class Builder {public abstract void buildCpu(String cpu);public abstract void buildMainboard(String mainboard);public abstract void buildRam(String ram);public abstract Computer create(); } 商家实现了抽象的Builder类MoonComputerBuilder类用于组装电脑 public class MoonComputerBuilder extends Builder {private Computer mComputer new Computer();Overridepublic void buildCpu(String cpu) {mComputer.setmCpu(cpu);}Overridepublic void buildMainboard(String mainboard) {mComputer.setmMainboard(mainboard);}Overridepublic void buildRam(String ram) {mComputer.setmRam(ram);}Overridepublic Computer create() {return mComputer;} } 用Dirextor指挥者类来统一组装过程 商家的指挥者类用来规范组装电脑的流程规范先安装主板再安装CPU最后安装内存并组装成电脑 public class Direcror {Builder mBuildnull;public Direcror(Builder build){this.mBuildbuild;}public Computer CreateComputer(String cpu,String mainboard,String ram){//规范建造流程this.mBuild.buildMainboard(mainboard);this.mBuild.buildCpu(cpu);this.mBuild.buildRam(ram);return mBuild.create();} } 客户端调用指挥者类 最后商家用指挥者类组装电脑。我们只需要提供我们想要的CPU主板和内存就可以了至于商家怎样组装的电脑我们无需知道。 public class CreatComputer {public static void main(String[]args){Builder mBuildernew MoonComputerBuilder();Direcror mDirecrornew Direcror(mBuilder);//组装电脑mDirecror.CreateComputer(i7-6700,华擎玩家至尊,三星DDR4);} } 3.使用建造者模式的场景和优缺点 使用场景 当创建复杂对象的算法应该独立于该对象的组成部分以及它们的装配方式时。相同的方法不同的执行顺序产生不同的事件结果时。多个部件或零件,都可以装配到一个对象中但是产生的运行结果又不相同时。产品类非常复杂或者产品类中的调用顺序不同产生了不同的效能。创建一些复杂的对象时这些对象的内部组成构件间的建造顺序是稳定的但是对象的内部组成构件面临着复杂的变化。 优缺点 优点 使用建造者模式可以使客户端不必知道产品内部组成的细节。具体的建造者类之间是相互独立的容易扩展。由于具体的建造者是独立的因此可以对建造过程逐步细化而不对其他的模块产生任何影响。 缺点 产生多余的Build对象以及Dirextor类。
http://www.zqtcl.cn/news/170365/

相关文章:

  • 罗湖附近公司做网站建设哪家便宜做cpa必须要有网站吗
  • 深圳网站开发教程wordpress密码登录插件
  • 农机网站建设目标上海网站建设工资多少
  • 手机做网站过程网站名字做版权需要源代码吗
  • 公司微信网站建设方案现在做外贸前景如何
  • 如何使用微信公众号做网站河南省专业做网站公司
  • 清远市清城区网站建设公司广州黄浦区建设局网站
  • 站长做2个网站网站程序指的是什么
  • 网站建设jw100请拿笔记记下新域名
  • 兰州市住房保障和城乡建设局网站如何有效的推广网站
  • 网站推广做百度还是360北京企业网站建设费用
  • 推荐一个简单的网站制作策划方案免费网站
  • 用vs2012做网站案例企业现在有必要做网站吗
  • 网站建设少用控件wordpress默认分类
  • php网站是什么数据库文件网站开发收
  • 新网网站空间做网站和app哪类商标
  • drupal网站建设数据库厦门市网站建设
  • 解释微信微网站室内设计效果图展板
  • 教做发绳的网站游戏网站建设需要多少钱
  • 那个网站可以做双色球号码对比的网站设计好学吗
  • 网站建设如何获取客户韩国建筑网站
  • 固始网站建设公司wordpress会员功能
  • 在哪找做调查赚钱的网站好自己做网站的成本
  • 网站开发职业xshuan主题wordpress
  • 网站代码框架建设网站需要学什么程序
  • 广州搜索seo网站优化企业邮箱密码忘了怎么重置密码
  • 重庆模板网站建设做新房网站怎么弄
  • 深圳做企业网站公司常用的网络营销方式
  • 建设网站公司怎么建站网站开发笔记
  • 网站网页建设论文惠州建设网站公司