`
Javaloverlover
  • 浏览: 348216 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

设计模式原则之我见

阅读更多

OCP(open-close-principle)开闭原则【最核心的法则】:

对扩展开发,对修改关闭;就是说不允许修改的是抽象类和接口,允许扩展的是具体的实现类。

举个简单的例子:比如一个系统里有分类这个概念,比如人与分类有关联,书籍与分类有关联,文章与分类也有关联...当需要查找某个人的分类时,就会在分类的service写个方法,来获取人的分类信息,当需要查找某本书的分类信息时,继续在分类的service里边添加另一个查找书籍分类的方法,照这样下去,这个类就会膨胀,没完没了,这就违反了开闭原则。可以采用分离的方法来解决这个问题:建一个分类的service接口,定义好需要的公用方法(这里是查找分类信息),然后建立对应的实现分类service接口的实现类,如PersonServiceImpl,这个专门用来查找人的分类,创建BookServiceImpl专门用来查找书籍的分类信息;OCP中,抽象化是关键,将可变的因素分块封装起来,避免超大类,超长类,超长方法。

 

LSP(Liskov Substitution Principle)里氏替换原则:

任何基类可以出现的地方,子类也可以出现。

尽量不要重写父类已经实现的方法,如果一定要重写,那么可以将原来的父类和子类都继承一个通用的基类,然后把原来的继承关系去掉。

 

接口隔离法则:使用对个专门的接口比使用单一的总接口要好

 

迪米特法则:一个对象对其他对象应该有最少的了解

 

依赖倒转原则:针对接口编程,不针对实现编程

 

单一职责原则:对于类尽量做到单一职责,但是对于方法一定要做到

 

----------------待续

分享到:
评论

相关推荐

    设计模式之我见

    ### 设计模式之我见 #### 设计模式的定义与意义 设计模式(Design Pattern)是一种在软件开发过程中被广泛采用的方法论,它基于一系列反复验证的解决方案,旨在提高代码的可读性、可重用性和可靠性。设计模式是...

    设计模式之我见源代码

    "设计模式之我见源代码"系列是作者分享的设计模式实践和理解,通过源代码的形式帮助读者深入理解和应用设计模式。 在提供的压缩包文件中,我们看到几个关键的目录和文件: 1. `.classpath`:这是一个Eclipse项目...

    设计模式6大原则

    设计模式原则:单一职责原则,里氏替换,依赖倒转,接口隔离,开放关闭等等。

    设计模式之六大原则详解,Markdown笔记

    详细介绍了设计模式六大原则,配有示例代码和图片,有开闭原则,单一职责原则,里氏替换原则,依赖倒置原则,接口隔离原则,迪米特法则等等。

    24种设计模式介绍与6大设计原则

    24种设计模式介绍与6大设计原则24种设计模式介绍与6大设计原则

    设计模式六大原则

    ### 设计模式六大原则详解 #### 一、开闭原则(Open-Closed Principle) **含义:** 开闭原则强调的是“对扩展开放,对修改关闭”。这意味着系统的设计应该是灵活的,能够轻松地添加新的功能而不需要修改现有代码...

    设计模式六大原则详解 经典

    设计模式是软件开发中的一种最佳实践,它基于一套核心原则来指导我们编写可维护、可扩展的代码。在这篇文章中,我们将深入探讨设计模式的六大原则,这些原则是理解并有效应用设计模式的基础。 首先,我们要了解“开...

    JAVA 24种设计模式介绍与6大设计原则.pdf

    在这些设计模式和原则中,策略模式是一个非常重要的行为型设计模式,它定义了一系列算法,并将每个算法封装起来,使它们可以相互替换使用。策略模式让算法的变化独立于使用算法的客户端。 以提供的文档内容为例,...

    设计模式之蝉

    作者提到他“可以扩展多种‘蝉’”,这暗示了设计模式中的开闭原则(Open/Closed Principle),即软件实体应该对扩展开放,对修改封闭。这样,当系统需要增加新的功能时,可以增加新的类或模块,而无需修改现有代码...

    设计模式六大原则 设计模式详解

    在本文中,我们将深入探讨设计模式的六大原则,这些原则是指导我们编写高质量、可维护和可扩展代码的关键。首先,我们将关注其中的一个重要原则——单一职责原则(Single Responsibility Principle,SRP)。 单一...

    设计模式与设计原则.pdf

    本文件《设计模式与设计原则.pdf》中,将详细地探讨设计模式以及与之相关的六大设计原则。 首先,设计模式主要分为三类: 1. 创建型模式(Creational patterns):这些模式提供了一种在创建对象的同时隐藏创建逻辑...

    设计原则与设计模式

    面向对象设计原则:面向对象设计原则、开闭原则、里氏替换原则、里氏替换原则、里氏替换原则

    C#面向对象设计模式纵横谈(1):面向对象设计模式与原则.zip

    C#作为一种流行的面向对象编程语言,在设计模式的实现上表现出色,而本书《C#面向对象设计模式纵横谈(1):面向对象设计模式与原则.zip》则深刻揭示了如何将这些模式与原则贯彻于C#代码之中。 首先,让我们从设计...

    设计模式之我见-设计模式论文

    设计模式之我见论文,格式严谨,含摘要、关键字、参考文献、致谢,适合做课程论文。只需修改名字便可使用,本文绝对原创,视角独到。

    设计模式之里氏转换原则

    里氏转换原则(Liskov Substitution Principle,简称LSP)是面向对象设计的基本原则之一,它是SOLID原则中的L原则。这个原则是由Barbara Liskov在1987年提出的,它规定子类型必须能够替换它们的基类型,而不影响程序...

    24种设计模式介绍与6大设计原则-PDF版 查阅方便

    这个PDF文档“24种设计模式介绍与6大设计原则”旨在帮助开发者理解和应用这些模式,提高代码的可维护性和可扩展性。以下是其中的主要内容: 一、设计原则 1. 单一职责原则:一个类或模块应只有一个引起其变化的原因...

    设计模式之开放封闭原则

    4. **依赖倒置原则**:这是SOLID原则之一,它强调依赖于抽象而不是具体实现。在C#中,这通常意味着高层模块不应该依赖于低层模块,两者都应依赖于抽象。通过这种方式,系统更加灵活,易于扩展和测试。 5. **工厂...

    C#面向对象设计模式纵横谈(1):面向对象设计模式与原则

    面向对象设计模式是软件开发中的重要工具,它们是经过时间考验和广泛实践验证的设计解决方案,旨在提高代码的可重用性、灵活性和可维护性。...因此,学习和掌握面向对象设计模式是每个C#程序员必备的技能之一。

Global site tag (gtag.js) - Google Analytics