码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 设计原则总结


    1. SRP 单一职责

    类的设计尽量做到只有一个原因引起变化。

    2. OCP开闭原则

    对扩展开放,对修改关闭。

    3. LSP里氏替换原则

    设计模式之里氏替换原则 - lovebeauty - 博客园

    子类必须实现父类的抽象方法,但不得重写(覆盖)父类的非抽象(已实现)方法。

    子类中可以增加自己特有的方法。

    当子类覆盖或实现父类的方法时,方法的前置条件(即方法的形参)要比父类方法的输入参数更宽松。

    当子类的方法实现父类的抽象方法时,方法的后置条件(即方法的返回值)要比父类更严格。

    3. ISP接口隔离

    使用多个专门的接口,而不使用单一的总接口,即客户端不应该依赖那些它不需要的接口。

    减少接口的空实现。

    4.c

    依赖倒置原则(Dependence Inversion Principle)是程序要依赖于抽象接口,不要依赖于具体实现。简单的说就是要求对抽象进行编程,不要对实现进行编程,这样就降低了客户与实现模块间的耦合。

    一般情况下抽象的变化概率很小,让用户程序依赖于抽象,实现的细节也依赖于抽象。即使实现细节不断变动,只要抽象不变,客户程序就不需要变化。这大大降低了客户程序与实现细节的耦合度。

    依赖是什么?a依赖b可以理解为class a中,存在class b的实例化。

    依赖倒置是什么?上层模块和下层模块共同依赖一个抽象的接口。上层实例化,下层实现。

    目的:解耦

    控制反转IOC:程序本身不负责依赖对象的创建和维护,而是把它交给外部容器来负责。控制权反转给外部ioc容器。

    依赖注入DI:IOC的实现方式。

  • 相关阅读:
    生命在于学习——MSF初体验(一)
    【MySQL | 进阶篇】04、SQL 优化
    解决Mac上执行pip install -e turtle 报错
    微服务 - 概念 · 应用 · 通讯 · 授权 · 跨域 · 限流
    [Unity][VR]Oculus透视开发图文教程1-Passthrough应用XR项目设置
    匿名访问查看服务器samba用户名实现smbclient -L
    Android异步和线程
    【RealTek sdk-3.4.14b】RTL8197FH sdk 防火墙ip6tables xt-mac异常问题修改
    监控与运维,主流it运维监控工具
    Seata分布式事务
  • 原文地址:https://blog.csdn.net/qq_43378019/article/details/127883659
  • 最新文章
  • 沪漂五周年了:我越来越迷茫了
    Agentic Skill Routing 实战:别再把所有 Skill 塞进 AI Agent 上下文
    MySQL-Seconds_behind_master的精度误差
    [MAF预定义ChatClient中间件-03]CachingChatClient——利用缓存省钱省时间
    AI的至暗历史:从万众期待到被政府撤资,AI的两次死亡徘徊
    Agent OS :五种驯服不确定性的范式
    PortSwigger SQL注入LAB11
    数据库即时编译JIT
    [Begin]AI Learn Data Day 0
    深度学习进阶(二十七)现代 LLM 的核心架构设计其二:SwiGLU
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号