设计模式

提示,代码实现仅有js的会使用ts编写,涉及交互的使用react编写ui

设计原则

设计模式有五大原则

1. SOLID 原则

介绍:

SOLID原则由5个设计原则构成SRP单一职责原则 OCP开闭原则 LSP里氏替换原则 ISP接口隔离原则 DIP依赖反转原则

Single Responsibility Principle 单一职责原则

每一个类,模块都要有明确的定义,不应大而全,而要功能单一,以较小的粒度负责单一职责

以此避免不相关的代码耦合在一起,实现高内聚低耦合

// demo code
// todo

Open Closed Principle 开闭原则

类、模块及方法等应对扩展开放,对修改关闭,意思就是可以扩展功能,但不能修改已有的功能

添加新功能也应该在不改动原有功能的情况下扩展已有代码,比如使用高阶函数、继承类或是扩展方法,而不是修改现有代码

这样可以实现代码的扩展性(可能会带来屎山,但至少可以让原本的功能仍然生效)

// demo code
// todo

Liskov Substitution Principle 里氏替换原则

任何基类可以出现的地方,子类都可以出现,子类对象可以替换基类对象而不影响程序的正确性

也就是说,子类的行为应与父类一致

// demo code
// todo

接口隔离原则

接口的功能应尽可能的简单,不要让一个接口完成一些多余的功能

比如一个接口可以同时获得文件列表和文件metadata,但如果有些场景只需要文件列表,那就需要拆分为两个函数

  1. 查询文件列表的函数

  2. 查询文件metadata的函数

这样就完成了接口的隔离

// demo code
// todo

依赖倒置原则

高层模块不要依赖底层模块,不同层之间通过抽象出的接口来依赖,不要通过实现来依赖‘

面向接口变成,依赖抽象而不是具体

// demo code
// todo

2. 迪米特原则

// demo code
// todo

3. KISS 原则

// demo code
// todo

4. YAGNI 原则

// demo code
// todo

5. DRY 原则

// demo code
// todo

6. 总结

设计模式