zoukankan      html  css  js  c++  java
  • 设计原则编码过程

    先学面向对象  ----》  实现功能(设计模式 + 算法(数据结构))  ---》框架(多种设计模式)---》架构(服务器集群)

    单一职责  : 类上 /类方法少,也可以在方法上

    接口隔离:依赖(使用)接口  ----实现接口(接口子类)

        A类通过接口依赖(使用)B类,接口最小原则,防止实现类B实现不需要的方法

    依赖倒换(面向接口编程):高层:接口/抽象类(制定规范)  底层:具体实现类,细节依赖抽象即具体类使用接口

                 让 变量引用 与 实际对象 之间有个缓冲层。利于扩展优化

    里氏替换(里女士提出,如何正确使用继承):要求换子类,程序行为没发生变化。即使用继承,要求尽量不要重写父类方法!

                                              但继承会带来侵入性,增加了耦合,即父变子倒霉。可以通过聚合,组合,依赖解决问题。

                                             多态频繁使用,导致错误?这他么是跟多态对着干啊

                                                但又想用父类方法,可以让子类提升档次(去除继承关系),和原父类公用基类,组合(new?)使用A里方法

     开闭原则(ocp):提供方修改扩展开放,使用方修改关闭

    修改后

    迪米特法则(最少知道原则,和直接朋友通信,不要和陌生朋友说话)目的降低类见耦合!

     直接朋友: 成员变量,方法参数,返回值

    陌生朋友:方法里面new对象

     依赖,关联,聚合,组合等都是耦合

    合成复用原则(少用继承,多用合成/聚合)

  • 相关阅读:
    BZOJ 3677: [Apio2014]连珠线 树形DP
    TweenMax说明
    vs 中快捷实现父类方法
    Box2d b2World的RayCast方法
    cocos2d-js 帧序列动画
    cocos2d-js 显示帧序列图中的一帧
    不同类型刚体接触测试
    FlashDevelop调试Air出错
    php 创建删除数据库
    本地php 连接 MySQL
  • 原文地址:https://www.cnblogs.com/daofree/p/15754953.html
Copyright © 2011-2022 走看看