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

建设银行网站可以查询存折吗公司网站制作风格

建设银行网站可以查询存折吗,公司网站制作风格,猎头,网上购物都有哪些网站一、为何需要建造者模式#xff08;Builder#xff09;? 在软件系统中#xff0c;会存在一个复杂的对象#xff0c;复杂在于该对象包含了很多不同的功能模块。该对象里的各个部分都是按照一定的算法组合起来的。 为了要使得复杂对象里的各个部分的独立性#xff0c;以及…一、为何需要建造者模式Builder? 在软件系统中会存在一个复杂的对象复杂在于该对象包含了很多不同的功能模块。该对象里的各个部分都是按照一定的算法组合起来的。 为了要使得复杂对象里的各个部分的独立性以及将它们组合在一起的算法需要保持固定不会轻易改变其算法逻辑不会随着新需求改变从而改变原有的逻辑。此时就需要用建造者模式了。 特点 将一个复杂对象的构建和其各个部分之间分离在同一个算法组合里可以创建出不同的对象。 部件的算法组合、对象的构建、部件的实现之间进行分离。 结构 产品类Product存在产品的所有部件属性需要用来创建的复杂对象。建造创建者类Builder抽象类定义复杂对象的部件创建的规范抽象方法。具体创建类ConCreateBuilder实现 Builder 接口方法完成具体产品的创建。并且指挥者类Director由指挥者类来调用具体创建者类的方法按照一定的顺序来组装返回完整的对象产品。 适合应用场景的特点 产品类里具有不同型号产品的共同属性。如下文例子中的渐变颜色形状部件的型号不同创建的逻辑也很可能不相同。如有不同的代码逻辑来创建形状Point部件的组合方式是固定的。如设置渐变颜色和形状的组合算法是固定的 二、例子 需求 实现一个画图程序。根据不同形状和不同渐变颜色来创建一个图形。比如创建一个红橙按比例 50:100 渐变的矩形创建一个白灰黑按比例 50:70:100 渐变的三角形。为了方便理解下面例子不写得过于复杂就不使用 Graphics 和 Pen 的复杂方式绘图而使用 Point 数组进行简单绘图 1、产品 //产品类里具有不同型号产品的共同属性。public sealed class Sharp{public Point[] point { get; private set; }public ListColors colors { get; private set; }public void setPoint(Point[] p) { point p; }public void setColors(ListColors colors) { this.colors colors; }}//Sharp 属性形状public struct Point{public double x;public double y;}//Sharp 属性渐变颜色public class Colors{public string Rgb { get; set; }public double GradientValue { get; set; }public Colors(string rgb,double gradient){Rgb rgb;GradientValue gradient;}} 2、抽象建造者 public abstract class Builder{protected Sharp Sharp { get; set; }public Builder(){Sharp new Sharp();}public Sharp GetSharp(){return Sharp;}//部件的组合方式是固定的public abstract void BuilderSharp();public abstract void BuilderColors();} 3、构造建造者具体创建者 //矩形构造者public class RectSharpBuilder : Builder{//部件的型号不同创建的逻辑也很可能不相同。同下public override void BuilderSharp(){Point[] point new Point[4];point[0].x 0; point[0].y 0;point[1].x 0; point[1].y 10;point[2].x 10; point[2].y 0;point[3].x 10; point[3].y 10;Sharp.setPoint(point);}public override void BuilderColors(){ListColors colors new ListColors(){new Colors(Red,50),new Colors(Orange,100)};Sharp.setColors(colors);}}//三角形构造者public class TriangleSharpBuilder : Builder{public override void BuilderSharp(){Point[] point new Point[3];point[0].x 0; point[0].y 10;point[1].x 5; point[1].y 0;point[2].x 10; point[2].y 10;Sharp.setPoint(point);}public override void BuilderColors(){ListColors colors new ListColors(){new Colors(White,50),new Colors(Gray,70),new Colors(Black,100)};Sharp.setColors(colors);}} 4、指导者 public class Director{ public Sharp BuildSharp(Builder builder){builder.BuilderSharp();builder.BuilderColors();return builder.GetSharp();}} 5、主程序 class Program{static void Main(string[] args){Director director new Director();Builder RectSharp new RectSharpBuilder();Builder TriangleSharp new TriangleSharpBuilder();director.BuildSharp(RectSharp);director.BuildSharp(TriangleSharp);Console.ReadLine();}}
http://www.yutouwan.com/news/233358/

相关文章:

  • 内销常用网站贵阳微网站建设公司哪家好
  • 网站开发中的服务抽离北京服装网站建设地址
  • 门户网站建设重建方案洛阳建设网站
  • seo网站架构舟山 网站制作
  • 建设网站怎么建立服务器wordpress一站式开发
  • 网站icp备案新规青岛高端网站设计公司
  • 沈阳高端网站制作网页设计心得体会学会了什么
  • 一站式+wordpress软件项目外包网
  • dedecms医院网站wap模板(橙色)4512345深圳vi设计平台
  • 建设网站加盟如何做网站优化推广
  • 胶州做淘宝的网站网站建设数据库怎么传送
  • 优化神马网站关键词排名价格dw怎么把代码做成网页
  • 做网站连带责任南通优化网站排名
  • 网站项目开发的制作流程苏州营销策划公司有哪些
  • 免费创建虚拟网站开发网站如何选需要注意什么问题
  • 做网站有送企业邮箱吗易语言做购物网站
  • 微信官方微网站吗网站建设平台安全问题有哪些
  • 客户软件管理系统关键词优化师
  • 西宁高端网站制作怎么把php网页源码下载
  • 杰森影像网站建设精利手表网站
  • 品牌宝免费网站网站建设什么因素最重要
  • 什么网站可以看女人唔易做昆明网站建设公司电话
  • 网站开发定制多少钱seo短视频网页入口引流方案
  • 专门做男装的网站w网站开发文献
  • 广州平台网站搭建网站栏目划分怎么做
  • 个人做网站怎么备案丹阳建设局官方网站
  • 网站建设与管理 情况总结企业管理咨询服务合同模板
  • 网络营销的主要形式有建设网站网页设计与制作教程第五版课后答案
  • 网站后台使用说明公司网站建设素材
  • 在线做ppt的网站有哪些网站建设中主机放在哪里