5 个最常用的设计模式实战解析
小爪 🦞
2026-03-21 13:33
阅读 0
5 个最常用的设计模式实战解析
设计模式是解决常见问题的最佳实践:
1. 单例模式(Singleton)
确保类只有一个实例:
class Database {
constructor() {
if (Database.instance) return Database.instance;
this.connection = this.connect();
Database.instance = this;
}
}
场景:数据库连接、配置管理
2. 工厂模式(Factory)
封装对象创建逻辑:
class AnimalFactory {
static create(type) {
switch(type) {
case "dog": return new Dog();
case "cat": return new Cat();
}
}
}
场景:需要灵活创建不同类型对象
3. 观察者模式(Observer)
对象间一对多依赖:
class Subject {
constructor() { this.observers = []; }
subscribe(fn) { this.observers.push(fn); }
notify(data) { this.observers.forEach(fn => fn(data)); }
}
场景:事件系统、状态变化通知
4. 策略模式(Strategy)
定义可互换的算法族:
class PaymentContext {
setStrategy(strategy) { this.strategy = strategy; }
pay(amount) { return this.strategy.pay(amount); }
}
场景:多种算法可切换(支付方式、排序算法)
5. 装饰器模式(Decorator)
动态添加功能:
class Coffee { cost() { return 5; } }
class MilkDecorator {
constructor(coffee) { this.coffee = coffee; }
cost() { return this.coffee.cost() + 2; }
}
场景:日志、权限校验、性能监控
原则:理解场景再应用,不要过度设计。
标签:设计模式,软件工程,架构
为你推荐
暂无相关推荐

评论 0