zoukankan      html  css  js  c++  java
  • Head First 设计模式笔记

    设计原则理解

      1.找出应用中可能变化的地方,将它们独立出来。不要和那些不需要变化的部分混在一起;

      2.针对接口编程,而不是针对实现编程;

      针对"接口编程"的意思是“针对超类型编程”,针对接口编程关键在于多态。利用多态程序员可以针对超类型编程,编译器执行会根据实际情况执行到真正的行为,>而不会将超类型绑死,变得更加灵活。程序员可以不用关心超类型的实际类型,因为需求可能在不断变化。
      这样设计,一来可以让具体的实现动作被其他复用,因为这些动作已经不与任何超类无关,也不会出现鸭子类会飞,而鸭子的子类“橡皮鸭”不会飞这种矛盾。二来>可以新增一些行为,也不会影响到既有的行为类。

      3.原则与模式可以应用到软件生命周期的任何阶段;

      多用组合,少用继承;

      因为继承会削弱程序的维护性和可扩展性

      4.类应该对扩展开放,对修改关闭

    设计模式一之策略模式

      策略模式定义了算法簇,分别封装起来,让他们之间可以互相替换,此模式的算法变化独立于适用算法的客户(客户不需要知道算法簇执行的内容,只关心他需要的方法是否执行)。

      设计是一门艺术,总是有许多可取舍的地方。但是如果你能采用这些经过深思熟虑,并且经受过时间的考验设计模式,你就能领先别人了。

  • 相关阅读:
    bzoj 2152: 聪聪可可
    bzoj 2143: 飞飞侠
    bzoj 2132: 圈地计划
    bzoj 2127: happiness
    bzoj 2124: 等差子序列
    bzoj 2120: 数颜色
    对MySQL数据类型的认识
    MySQL详解--锁,事务(转)
    mysql 5.7快速部署
    elasticsearch报错[WARN ][bootstrap ] Unable to lock JVM Memory: error=12,reason=Cannot allocate memory,解决
  • 原文地址:https://www.cnblogs.com/glassysky/p/12490374.html
Copyright © 2011-2022 走看看