该技能提供 Gang of Four(GoF)全部 22 个设计模式在 TypeScript 中的实用实现参考,用于解决反复出现的架构问题、重构紧耦合代码、构建插件/扩展系统、通过依赖注入提升可测试性,以及在代码审查中处理架构问题、在继承与组合之间做选择。
主要能力按三类划分。创建型:Factory Method、Abstract Factory、Builder、Prototype、Singleton;结构型:Adapter、Bridge、Composite、Decorator、Facade、Flyweight、Proxy;行为型:Chain of Responsibility、Command、Iterator、Mediator、Memento、Observer、State、Strategy、Template Method、Visitor。具体实现位于 references/CREATIONAL.md、references/STRUCTURAL.md、references/BEHAVIORAL.md。
使用方式:资料提供“问题—模式”选择指南,例如对象创建解耦用 Factory Method/Abstract Factory,多可选字段的复杂对象用 Builder,昂贵对象需复制用 Prototype,全局共享资源用 Singleton,不兼容第三方接口用 Adapter,树形结构用 Composite,动态加职责用 Decorator,简化复杂 API 用 Facade,内存敏感的大量相似对象用 Flyweight,懒加载/访问控制/缓存用 Proxy,请求处理链用 Chain of Responsibility,撤销重做与任务队列用 Command,事件系统用 Observer,可替换算法用 Strategy,固定步骤可变部分用 Template Method 等。
最佳实践强调:只选当前实际问题所需的模式,优先组合而非继承,用依赖注入解耦,实现保持简单避免过度设计,记录选择该模式的原因而非仅记录用了哪个,考虑可测试性,可适当组合模式(如 Strategy + Factory)。不宜为假设的未来需求预先套用模式、在简单函数足够时强行使用模式、制造多余抽象层、把 Singleton 当作伪装的全局变量、在组合更合适时选继承,或忽视团队熟悉度。
同时提供 SOLID 快速参考及关联模式:单一职责(Strategy、Command、Observer)、开闭原则(Decorator、Strategy、Template Method)、里氏替换(Factory Method、Abstract Factory)、接口隔离(Adapter、Facade)、依赖倒置(所有使用接口/抽象的模式)。
限制:资料未提供该技能的安装命令、运行环境、依赖版本、收费方式、平台支持与具体使用步骤,这些信息暂未提供。