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

做网站设计学那个专业好名人朋友圈网页版qq登录入口

做网站设计学那个专业好,名人朋友圈网页版qq登录入口,网页创意的再设计,网站制作公司属于广告发布者吗什么是设计模式 设计模式#xff1a;在软件设计中给定上下文中常见问题的通用的、可重用的解决方案。 设计模式分类 1. 创建型模式——Creational patterns 关注对象创建的过程 1.1 工厂方法模式 定义用于创建对象的接口#xff0c;但让子类决定要实例化哪个类。工厂方…什么是设计模式 设计模式在软件设计中给定上下文中常见问题的通用的、可重用的解决方案。 设计模式分类 1. 创建型模式——Creational patterns 关注对象创建的过程 1.1 工厂方法模式 定义用于创建对象的接口但让子类决定要实例化哪个类。工厂方法允许类将实例化推迟到子类。 应用场景当client不知道要创建哪个具体类的实例或者不想在client代码中指明要具体创建的实例时用工厂方法。 优点无需将特定于应用程序的类绑定到代码中。代码仅处理接口所以它可兼容其他子类。 缺点增加代码量需要额外增加一个Creator类及其子类。 2. 结构型模式——Structural patterns 处理类或对象的组合 2.1 适配器模式 将某个类/接口转换为client期望的其他形式 应用场景需要在新系统中重用一个不兼容的老组件 如上图所示为了实现Shape的display方法对先前已存在的类—LegacyRectangle中的diaplay方法进行了重用 优点实现了对已有类的大限度复用避免“重新造轮子”。 缺点适配器模式会引入额外的类和代码这可能会增加系统的复杂性。此外适配器模式有时会被用来掩盖设计上的问题而不是解决它们。例如适配器可能被用来连接不兼容的接口但这可能是由于设计不良或缺乏整体架构考虑造成的。使用适配器模式可能会使得根本问题被忽视。 2.2 装饰器模式 实现子类特性的任意组合 应用场景想要对子类实现多个特性的堆叠 上图为一个应用实例通过逐层调用装饰器进行包装实现特性的组合 优点: 动态扩展对象功能装饰器模式允许在运行时动态地添加功能而无需修改对象的类。这使得可以根据需要灵活地增加或移除功能。遵循单一职责原则每个装饰器类都专注于一个特定的功能扩展。这使得每个类的职责更加单一和明确易于维护和理解。替代继承通过组合而不是继承来扩展对象的功能避免了类爆炸class explosion问题。继承会导致大量的子类而装饰器模式则通过不同装饰器的组合来实现相同的效果。灵活性和可组合性多个装饰器可以组合使用以创建复杂的功能扩展。这种组合方式提供了极大的灵活性允许以多种方式排列和组合装饰器。透明性客户端可以透明地使用装饰器而无需知道对象被装饰了。装饰器模式对客户端是透明的客户端代码无需修改即可使用增强功能的对象。 缺点 增加代码复杂性虽然装饰器模式提供了灵活性但也增加了系统的复杂性。尤其是在装饰器链较长时调试和排查问题可能变得困难。较多的小类由于每个具体装饰器都是一个独立的小类这可能导致系统中类的数量增加从而增加维护和管理的难度。 3. 行为类模式——Behavioral patterns 描述类或对象交互和分配责任的方式。 3.1 策略模式 对于特定的任务存在不同的算法客户端可以在运行时根据动态上下文在算法之间切换。 应用场景为不同的实现算法构造抽象接口利用delegation运行时动态传入client倾向的算法类实例 如上图所示在使用ShoppingCart中的pay方法时可以根据需要传入算法策略的类型从而实现不同的操作 优点 开闭原则策略模式遵循开闭原则OCP允许你在不修改现有代码的情况下引入新的策略。新策略的添加不会影响到现有的策略类和上下文类。消除条件判断策略模式通过使用多态消除了在客户端代码中使用条件判断来选择算法的需求。客户端代码不需要通过条件语句来决定使用哪种算法而是通过策略接口调用对应的算法。提高代码的灵活性和可维护性由于策略模式将算法封装在独立的类中算法的实现可以独立于其上下文类进行修改。这使得代码更易于理解、维护和扩展。 缺点 增加对象数量策略模式会引入大量的策略类如果策略的数量很多类的数量也会显著增加。这可能导致代码库变得复杂管理起来更困难。客户端必须了解不同的策略客户端必须知道不同策略之间的区别并且需要了解如何选择合适的策略。这增加了客户端代码的复杂性。 3.2 模板模式 做事情的步骤一样但具体方法不同 应用场景共性的步骤在抽象类内公共实现差异化的步骤在各个子类中实现 优点实现了代码的复用减少冗余代码量 缺点基类中定义的算法骨架是固定的子类只能修改其中的部分步骤。如果需要修改算法的整体结构必须修改基类这可能违背开闭原则OCP。 3.3 迭代器模式 客户端希望遍历被放入容器/集合类的一组ADT对象无需关心容器的具体类型 应用场景让自己的集合类实现Iterable接口并实现自己的独特Iterator迭代器(hasNext, next, remove)允许客户端利用这 个迭代器进行显式或隐式的迭代遍历 以下是代码示例 public class PairE implements IterableE {private final E first, second;public Pair(E f, E s) { first f; second s; }public IteratorE iterator() {return new PairIterator();}private class PairIterator implements IteratorE {private boolean seenFirst false, seenSecond false;public boolean hasNext() { return !seenSecond; }public E next() {if (!seenFirst) { seenFirst true; return first; }if (!seenSecond) { seenSecond true; return second; }throw new NoSuchElementException();}public void remove() {throw new UnsupportedOperationException();}} }3.4 Visitor模式 将数据和作用于数据上的某种特定操作分离开来 应用场景为ADT预留一个将来可扩展功能的“接入点”外部实现的功能代码可以在不改变ADT本身的情况下通过delegation接入ADT 优点 易于增加新的操作通过添加新的访问者类可以在不修改对象结构的情况下定义新的操作。这使得系统更易于扩展符合开放/封闭原则OCP。集中相关行为访问者模式将相关的行为集中在一个访问者类中而不是分散在对象类中。这使得行为更容易理解和维护。 缺点 违反单一职责原则访问者模式将多个不相关的操作集中到访问者类中可能违反单一职责原则。每个访问者类通常实现多个方法这些方法可能具有不同的目的和逻辑。
http://www.hkea.cn/news/14401568/

相关文章:

  • 求网站建设详细过程网站的开发方法有哪些
  • 做标签网站刷单学生个人网页制作成品
  • seo如何分析一个网站建站网址什么意思
  • 网站建设搞笑广告词简单网页设计作品欣赏
  • 做网站是怎样赚钱网站建设报价比较
  • 网站开通宣传怎么写wordpress 主题 xiu
  • dedecms部署两个网站共享会议室租赁平台
  • 网站建设费预付定金什么科目企业网站建站之星
  • 做雷达干扰的网站东莞浩智建设网站哪家比较好
  • 长沙企业建站程序免费个人网站搭建
  • 大哥商品做网站的目的新会住房和城乡建设部网站
  • 南通做百度网站的公司家具全屋定制
  • 怎么用自己电脑做网站服务器做电商看的网站有哪些内容
  • 做文学网站算不算开公司网站建设栏目规划
  • 坪地网站建设市场百度网站联系方式
  • 网站开发项目流程书电商ui设计是什么意思
  • 网站后台风格网站后缀co
  • 竞争者网站建设情况宁波网站推广软件服务
  • 免费论坛申请网站微网站 底部导航菜单
  • 网站开发背景400字化工材料 技术支持 东莞网站建设
  • 兴国做网站天津网
  • 河北建设网官方网站c c也能干大事网站开发
  • 网站建设及域名申请 厦门建设银行储蓄卡申请网站
  • 教育网站 怎么做吸引人seo怎么判断网站的好坏
  • 定制建站 app建设网站建设价格比较
  • 禅城区网站建站网站dede网站移动端怎么做
  • 齐博网站模板网站二级目录 修改路径
  • 建设一个下载网站网络营销的特点主要有
  • 做网站看好金石网络岳阳关键词优化
  • 厦门市建设局官方网站成都网页设计培训哪家好