作业二:读书笔记----软件设计原则、设计模式
这个作业属于哪个课程 | [2022软件代码开发技术]https://edu.cnblogs.com/campus/gdgy/2022softwarecodedevelopmenttechnology/ |
---|---|
这个作业要求在哪里 | [自我介绍+课程 6 问]https://edu.cnblogs.com/campus/gdgy/2022softwarecodedevelopmenttechnology/homework/12493 |
这个作业的目标 | 初步了解设计原则和设计模式 |
一、软件设计原则
设计原则 | 原则描述 |
---|---|
单一职责原则 | 不要存在多于一个导致类变更的原因,一个类只干一件事,实现类要单一。 |
里氏替换原则 | 任何父类可以出现的地方,子类一定可以出现。而且替换为子类也不会产生任何错误或异常 |
依赖倒置原则 | 针对接口编程,依赖于抽象而不依赖于具体。 |
接口隔离原则 | 使用多个隔离的接口,比使用单个接口要好。一个类对另外一个类的依赖性应当是建立在最小的接口上的。 |
迪米特法则 | 一个实体应当尽量少的与其他实体之间发生相互作用,使得系统功能模块相对独立。 |
开闭原则 | 对扩展开放,对修改关闭。 |
二、软件设计模式
创建型模式:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。
结构型模式:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。
行为型模式:策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式。
三、总结与思考
写代码前要尽量考虑自己是否遵循了尽可能多的设计原则,从而有效提高代码质量,方便后续的代码维护与缺陷查找
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
· 【杂谈】分布式事务——高大上的无用知识?