zoukankan      html  css  js  c++  java
  • 设计模式学习笔记一开篇

    最近使用设计模式的时候发现要走两步

    一:先用普通方法将代码的功能完成

    二:在使用合适的设计模

    这样比较好(别人说的我试了试非常好

    --------------------------------------------忧伤的分割线-----------------

    各种面向对象编程语言相互有别,但都能看到它们对面向对象三大机
    制的支持,即: “封装、继承、多态”
    –封装,隐藏内部实现
    –继承,复用现有代码
    –多态,改写对象行为

    •针对接口编程,而不是针对实现编程^-^这个要说下首先上面说过要来两次,第二次的时候抽象接口
    –客户无需知道所使用对象的特定类型,只需要知道对象拥有客户所期望
    的接口。
    •优先使用对象组合,而不是类继承
    –类继承通常为“白箱复用”,对象组合通常为“黑箱复用”。继承在某种程度
    上破坏了封装性,子类父类耦合度高;而对象组合则只要求被组合的对
    象具有良好定义的接口,耦合度低。
    •封装变化点(这个我做的不够好
    –使用封装来创建对象之间的分界层,让设计者可以在分界层的一侧进行

    几条更具体的设计原则
    •单一职责原则(SRP):
    一个类应该仅有一个引起它变化的原因(- -这个到现在还不清楚因为实际编程的时候界限不好划分啊)。
    •开放封闭原则(OCP):
    –类模块应该是可扩展的,但是不可修改(对扩展开放,对更改封闭,--这个也不清楚,现在开发的程序很少能扩展除非,用接口,或者装饰模式~ ~)
    •Liskov 替换原则(LSP):
    –子类必须能够替换它们的基类
    •依赖倒置原则(DIP):
    –高层模块不应该依赖于低层模块,二者都应该依赖于抽象。
    –抽象不应该依赖于实现细节,实现细节应该依赖于抽象。
    •接口隔离原则(ISP):
    不应该强迫客户程序依赖于它们不用的方法(这个无所谓.....)。

  • 相关阅读:
    IDA断点和搜索
    shell grep正则匹配汉字
    吐槽一下jsoup
    mysql函数
    hutools之批量更新
    Hutools之http工具类
    Java通过腾讯邮箱发送邮件
    访问网络资源的方式--application/json和x-www-form-urlencoded
    HttpClient获取数据
    URLConnection类的使用
  • 原文地址:https://www.cnblogs.com/angellapples/p/2125548.html
Copyright © 2011-2022 走看看