里氏替换原则(Liskov Substitution Principle, LSP)是面向对象设计原则的一种,也叫里氏代换原则。里氏替换原则是关于继承的一个原则,遵循里氏替换原则能够更好地发挥继承的作用,里氏替换原则最早是在1988年,由麻省理工学院的一位姓里的女士(Barbara Liskov)提 ...
分类:
其他好文 时间:
2020-10-16 11:17:19
阅读次数:
23
概述在设计系统架构的时候,我们要用其道,利用其原则,不断的寻求技术平衡点,已达到架构足够的灵活。设计模式和设计原则是项目中能够使程序设计得有复用性,扩展性,安全性。场景当我们重构一个系统的时候,之前的代码如果非常糟糕那让人理解起来也费劲,不易扩展,不易重构,比如项目中用了大量的if,else;或者是一些方法特别长,用了大量的new关键字,这个时候得想起用设计模式进行改造了,一个接口集成了好几个模块
分类:
其他好文 时间:
2020-09-23 23:31:39
阅读次数:
47
设计模式六大原则最佳实践: 一.单一职责原则 二.开放封闭原则 三.里氏替换原则 四.依赖倒置原则 五.接口隔离原则 六.迪米特法则 是否每条都要遵守? 1.不是每条都要准守,不必为遵守而遵守 2.在设计思考的时候,出发点是解决不必要的耦合度,不是为了套设计原则和模式 比如工厂的使用,大部分简单工厂 ...
分类:
其他好文 时间:
2020-09-17 17:33:55
阅读次数:
20
开闭原则: 对拓展开放,对修改关闭 里氏替换原则: 继承必须保证超类所拥有的性质在子类中仍然成立 依赖倒置原则: 要面向接口编程,不要面向现实 单一职责原则: 控制类的粒度大小,将对象解耦,提高内聚 接口隔离原则: 要用各个类建立他们需要的专用接口 迪米特法则: 只与直接朋友交谈,不与“陌生人”通信 ...
分类:
其他好文 时间:
2020-07-28 22:29:57
阅读次数:
93
首先我们看下各个模式之间的关系图,下面这张图是网上比较典型的一个类图关系: 从上面的类图之间可以看出,学习设计模式或者说学懂完全理解所有的设计模式还是挺难的,只能说不断的重复学习,不断的去领悟才是唯一的方法,当然不排除有些人是天才看一篇就学会了,可惜鄙人不是,所以必须不断重复学习来加深自己的理解。个 ...
分类:
编程语言 时间:
2020-07-11 22:34:46
阅读次数:
54
单一职责原则 概念:不要存在多余一个导致类变更的原因;即一个类只负责一项职责; 原因:如果类T负责两个不同的职责P1和职责P2,当职责P1需求发生改变而修改类T时,原本运行正常的职责P2可能故障; 优点:降低类的复杂性;提高类的可读性;变更引起的风险降低 里氏替换原则 概念:所有引用基类的地方必须能 ...
分类:
其他好文 时间:
2020-07-05 19:13:17
阅读次数:
52
一、开闭原则(Open Closed Principle,OCP):当应用的需求改变时,在不修改软件实体的源代码或者二进制代码的前提下,可以扩展模块的功能,使其满足新的需求。 二、里氏替换原则(Liskov Substitution Principle LSP):子类可以扩展父类的功能,但不能改变父 ...
分类:
其他好文 时间:
2020-06-25 19:20:57
阅读次数:
353
[5+1]里氏替换原则(一)前言面向对象的SOLID设计原则,外加一个迪米特法则,就是我们常说的5+1设计原则。这六个设计原则的位置有点不上不下。论原则性和理论指导意义,它们不如封装继承抽象或者高内聚低耦合,所以在写代码或者codereview的时候,它们很难成为“应该这样做”或者“不应该这样做”的一个有说服力的理由。论灵活性和实践操作指南,它们又不如设计模式或者架构模式,所以即使你能说出来某段代
分类:
其他好文 时间:
2020-06-23 10:24:22
阅读次数:
67
一什么是设计模型 软件工程中,设计模式(designpattern)是对软件设计中普遍存在(反复出现)的各种问题,所提出的解决方案 二设计模型的目的 编写软件过程中,程序员面临着来自耦合性,内聚性以及可维护性,可扩展性,重用性,灵活性等多方面的挑战,设计模式是为了让程序(软件),具有更好 1)代码重 ...
分类:
其他好文 时间:
2020-06-10 19:06:50
阅读次数:
165
目录 一、概述 二、7个设计原则 1、单一职责原则 ( SRP ) 2、开闭原则 ( OCP ) 3、里氏替换原则 ( LSP ) 4、依赖倒置原则 ( DIP ) 5、接口隔离原则 ( ISP ) 6、最少知道原则(迪米特原则) 7、合成/聚合复用(CARP) 三、创建型模式 ( 5种 ) 1.单 ...
分类:
其他好文 时间:
2020-06-09 23:22:59
阅读次数:
77