跳转至

软件设计

这是华为可信认证的一个科目,本版块将重点学习软件设计的知识,包括设计原则和设计模式;大部分语料由AI生成,我负责整理、发布

软件设计是在需求与实现之间建立结构的过程:把系统拆成合适的模块,明确模块之间的依赖与职责,并让结构在需求变化时仍然可控。

设计原则

设计原则是经验性的指导方针,不是硬性规则。它们共同的目标是降低耦合、提高内聚、让变化的影响范围可控。最基本的原则是 SOLID 原则:

原则 英文 核心思想 违反时的典型症状
单一职责原则 SRP (Single Responsibility) 一个模块应围绕一个主要职责进行组织,即只有一个引起它变化的原因 一个类里混着业务逻辑、持久化、格式化,改动一处牵连多处
开闭原则 OCP (Open/Closed) 尽量通过扩展来增加功能,而不是反复修改稳定的代码 每加一种类型就要改一遍 switch / if-else
里氏替换原则 LSP (Liskov Substitution) 子类型应能在约定的使用场景中替代父类型,且不破坏调用方的预期 子类抛出不支持的异常、静默改变父类语义
接口隔离原则 ISP (Interface Segregation) 不要强迫调用方依赖不需要的接口 一个庞大的接口,实现类被迫写一堆空方法
依赖倒置原则 DIP (Dependency Inversion) 高层策略不应直接依赖低层实现细节,二者都应依赖抽象 业务层直接 new 具体的数据访问类,难以替换和测试

设计模式

设计模式是可复用的、针对特定上下文的解决方案模板。经典的 GoF(Gang of Four)设计模式共 23 种,按目的分为三大类。

四人帮是哪四人

这里的四个人是:

  • Erich Gamma
  • Richard Helm
  • Ralph Johnson
  • John Vlissides

1994 年,他们共同出版了一本影响深远的书:《Design Patterns: Elements of Reusable Object-Oriented Software》

类别 关注点 包含模式
创建型 对象如何被创建,解耦"使用"与"实例化" 单例、工厂方法、抽象工厂、建造者、原型
结构型 类与对象如何组合成更大的结构 适配器、桥接、组合、装饰器、外观、享元、代理
行为型 对象之间如何协作、如何分配职责 责任链、命令、解释器、迭代器、中介者、备忘录、观察者、状态、策略、模板方法、访问者

最后更新: 2026-10-27 01:43:13
创建日期: 2026-10-23 01:34:52

广告

人要恰饭的嘛🤑🤑

评论