本文最初发布于Medium网站,经原作者授权由InfoQ中文站翻译并分享。
设计模式是解决问题的良好模板,开发人员可以在自己的项目应用这些模式处理需求。现实中应付各种需求的模式数不胜数,一篇文章无法尽述。不过它们可以大致分为三个类别:
- 结构模式,负责处理不同组件(或类)之间的关系,并形成新结构以提供新功能。结构模式的例子有组合(Composite)、适配器(Adapter)和装饰器(Decorator)。
- 行为模式,它们能将组件之间的通用行为抽象为一个单独的实体,进而与你的创建模式结合起来。行为模式的例子包括命令(Command)、策略(Strategy)以及我个人最喜欢的一种:观察者(Observer)模式。
- 创建模式,它们专注于类的实例化,简化新实体的创建过程,例如工厂(Factory)方法、单例(Singleton)和抽象工厂(Abstract Factory)。
虽然它们可以直接在JavaScript中实现,特别是有了ES6后实现起来更容易了,但TypeScript采用的OOP方法使得开发人员可以简单明了地遵循通用指南(甚至来自其他OOP语言),从而获得这些模式的所有好处(而标准JS相比之下多少存在一些限制)。
原文链接:【https://www.infoq.cn/article/2VJ1tSD1dimElT3qg0Kv】。未经作者许可,禁止转载。