美文网首页
每日一学23——Unity C# 设计模式原则

每日一学23——Unity C# 设计模式原则

作者: ShawnWeasley | 来源:发表于2020-07-14 09:35 被阅读0次

学习来源:https://blog.csdn.net/qq_34244317/article/details/77801379

至于是六大还是七大,反正有用就行,先摘抄一下:

七大面向对象设计原则
开闭原则:面对需求,对程序的改动是通过增加新代码进行的,而不是改变原来的标题
依赖倒转原则:高层模块不应该依赖底层模块,两个都应该依赖与抽象;抽象不应该依赖于细节,细节应该依赖于抽象。所以要针对接口编程,不要针对实现编程。
里氏代换原则:由于使用基类对象的地方都可以使用子类对象,因此在程序中尽量使用基类类型来对对象进行定义,而在运行时再确定其子类类型,用子类对象来替换父类对象
单一职责原则:一个对象应该只包含单一的职责,并且该职责被完整地封装在一个类,就一个类而言,应该仅有一个引起它变化的原因
接口隔离原则:接口隔离原则是指使用多个专门的接口,而不使用单一的总接口。每一个接口应该承担一种相对独立的角色,不多不少,不干不该干的事,该干的事都要干
合成复用原则:合成复用原则就是指在一个新的对象里通过关联关系(包括组合关系和聚合关系)来使用一些已有的对象,使之成为新对象的一部分;新对象通过委派调用已有对象的方法达到复用其已有功能的目的。简言之:要尽量使用组合/聚合关系,少用继承
迪米特法则:一个软件实体应当尽可能少的与其他实体发生相互作用。在类的结构设计上,每一个类都应当尽量降低其成员变量和成员函数的访问权限

自己理解:
1.针对新需求,通过新增代码解决,不修改原代码
2.针对接口编程,就是说定义一个变量,应该定义一个接口而非一个类,可以参考这篇:https://www.cnblogs.com/hachun/p/3445389.html
3.子类要实现父类的抽象方法,不能重写父类非抽象方法

因为继承带来的侵入性,增加了耦合性,也降低了代码灵活性,父类修改代码,子类也会受到影响,此时就需要里氏替换原则:
a.子类必须实现父类的抽象方法,但不得重写(覆盖)父类的非抽象(已实现)方法。
b.子类中可以增加自己特有的方法。
c.当子类覆盖或实现父类的方法时,方法的前置条件(即方法的形参)要比父类方法的输入参数更宽松。
d.当子类的方法实现父类的抽象方法时,方法的后置条件(即方法的返回值)要比父类更严格。
参考:https://www.cnblogs.com/o-andy-o/p/10315188.html

4.类的职责要单一,并且同类型的职责要写在一个类里
5.接口按职责分开,不要堆在一起
6.在一个新的对象里面使用一些已有的对象,使之成为新对象的一部分;新对象通过向这些对象的委派达到复用已有功能的目的。少用继承
7.少public,优先private

相关文章

  • 每日一学23——Unity C# 设计模式原则

    学习来源:https://blog.csdn.net/qq_34244317/article/details/77...

  • 设计模式

    《C#设计模式》 《C#设计模式》-设计模式概述 《C#设计模式》-面向对象设计原则 《C#设计模式》-单例模式 ...

  • 对 .Net的基础 脑图汇总

    细节整理:一、设计模式,23种设计模式、6种原则:原则:场景触发-解决问题-总结沉淀-推广应用 23种设计模式,解...

  • Unity3D塔防开发流程

    Unity3D塔防开发流程 配置环境及场景搭建 编程语言:C#,略懂些许设计模式,如果不了解设计模式,BUG Mo...

  • 设计模式之五大设计原则

    23中具体的设计模式的基石就是设计原则,只有遵循了这些设计原则,才能称得上是设计模式。主要介绍五大设计原则。 一、...

  • php设计模式

    1. 设计模式原则 2.php使用的设计模式(23种)

  • 面向对象 设计原则 & 松耦合设计 & 设计模式

    0 OO 设计原则 & 松耦合设计 & 设计模式 1 23 种 设计模式 Key Points 2 Fact...

  • 23 种设计模式

    最经典的23种设计模式中或多或少地都在使用六大设计原则,设计模式是站在设计原则的基础之上的。 概要介绍个设计模式的...

  • Java基础(5)——设计模式

    Java for android基础知识 面向对象的6个设计原则和23经典设计模式 一、设计原则 1.单一职责原则...

  • 面向对象:6大原则、24种设计模式

    接上一篇:面向对象介绍 为什么要学设计原则、设计模式? 若不学好经典设计模式,和通过设计模式理解面向对象的原则,你...

网友评论

      本文标题:每日一学23——Unity C# 设计模式原则

      本文链接:https://www.haomeiwen.com/subject/ikqxhktx.html