首页 > 其他分享 >设计模式基础

设计模式基础

时间:2024-08-26 15:22:30浏览次数:13  
标签:原则 代换 实体 基础 接口 Principle 设计模式

1.面向对象设计的原则(七大原则)

1.1单一职责(SPR:Single Responsibilities Principle):一个类应只负责一个功能领域的相关职责,即只有一个使它变化的原因

1.2开放闭合(OCP:Open-Close Principle):软件实体应对扩展开发,对修改关闭,即实体可以扩展,但不能在原来的实体上修改

1.3里氏代换(LSP:Liskov Substitution Principle):所有有父类的地方都可以用子类替换,里氏代换是对开放闭合原则的补充

1.4依赖倒置(DIP:Dependence Inversion Principle):抽象不应依赖于细节,细节应依赖于抽象,即应针对接口编程,不要针对实现编程

1.5接口隔离原则(ISP:Interface Segregation Principle):使用多个子接口代替一个总接口

1.6组合复用原则(CRP:Composite Reuse Principle):尽量用组合关系代替继承关系

1.7迪米特法则(LoD:Law of Demeter)一个实体应该只与其有直接关系的实体发送交互,如果需要调用没有直接关系的实体应当通过第三者进行调用

标签:原则,代换,实体,基础,接口,Principle,设计模式
From: https://www.cnblogs.com/lidaying5/p/18380851

相关文章

  • MySQL-基础篇
    MySQL概述1、数据库相关概念主流的关系型数据库:总结1)数据库:数据存储的仓库2)数据库管理系统:操纵和管理数据库的大型软件3)SQL:操作关系型数据库的编程语言,是一套标准2、MySQL数据库版本MySQL官方提供了两种不同的版本:社区版(MySOLCommunityServer)=>免费,MySQL......
  • 学会Python基础制作简单计算器(附源码)
    在Python中,我们可以使用tkinter库来制作一个具有图形用户界面的简单计算器。以下是一个完整的教程,包括设计思路、代码实现以及运行效果说明。设计思路在设计计算器程序时,我们需要考虑以下几个方面:界面设计:计算器需要一个简单的用户界面,用户可以通过该界面输入数字和运算符......
  • 设计模式2个黄鹂鸣翠柳-《分析模式》漫谈23
    DDD领域驱动设计批评文集做强化自测题获得“软件方法建模师”称号《软件方法》各章合集“AnalysisPatterns”的第一章有这么一句:The"GangofFour"bookhashadmuchmoreinfluenceinsoftwarepatternsthanAlexander'swork,and three outofthose four auth......
  • k8s 基础命令
    1.查看所有api资源kubectlapi-resourcesNAME资源名称SHORTNAMES资源简写APIGROUPapi组NAMESPACED命名空间KIND分类[root@k8s-master~]#kubectlapi-resourcesNAMESHORTNAMESAPIGROUPNAMESPACEDKINDbindi......
  • B站宋红康JAVA基础视频教程个人笔记chapter08-09(异常处理+多线程)
    文章目录1.异常处理方式1:try-catch-finally2.异常处理方式1:throws3.程序,进程,线程的区别4.线程的创建4.1线程的创建方式1:4.2线程的创建方式2:5.线程类的常用方法和生命周期5.1线程的生命周期jdk5之前6.线程的安全问题和同步机制6.线程之间的通信6.1为什么需要线程之间......
  • C++学习随笔——简单的单例设计模式实例
    点击查看代码#include<iostream>classSingleton{private://私有化构造函数,防止外部实例化Singleton(){std::cout<<"SingletonInstanceCreated!"<<std::endl;}//删除拷贝构造函数和赋值运算符,防止拷贝实例Singleton(constSin......
  • 第四章:行为型模式(11种)《Java设计模式宝典:从入门到精通》
      在进入第四章之前,我为大家准备了设计模式专栏的快速访问链接,方便大家随时查阅:《Java设计模式宝典:从入门到精通》专栏目录地址,点击我即可快速访问到所有设计模式的章节,不漏掉一处学习的知识 [点赞]等会儿兄弟们,这篇文章的干货真的是满满的!......
  • Redis基础篇 - Pub/Sub发布订阅
    文章目录1关于Pub/Sub发布订阅2RedisPub/Sub的基础操作2.1基础操作命令2.2操作示例3使用模式(pattern)订阅3.1使用模式匹配3.2模式匹配的消息格式3.3如果同时匹配了多个呢?4分片Pub/Sub5RedisPub/Sub的一些特性5.1消息传递语义Deliverysemantics5.2推送消......
  • IEC61850教程,第一章:IEC 61850 基础知识介绍
    第一章:IEC61850基础知识介绍平时学习标准或调试IEC61850设备,需要IEC61850模拟器,推荐一款:客户端下载地址:IEC61850客户端模拟器服务端下载地址:IEC61850服务端模拟器什么是IEC61850?IEC61850是定义变电站自动化系统内的设备及其相互作用方式的国际标准。IEC61850的目......
  • Redis 基础
    1.初始Redis1.1认识NoSQLNoSql可以翻译做NotOnlySql(不仅仅是SQL),或者是NoSql(非Sql的)数据库。是相对于传统关系型数据库而言,有很大差异的一种特殊的数据库,因此也称之为非关系型数据库。1.1.1结构化与非结构化‍​​1.1.2关系型与非关系型的差异存储方式关系型数据......