我们正在编写越来越大、越来越复杂的 _JavaScript_ 应用,在其中用上了最新的框架和类库,但我们往往忽视了创造这些类库时涉及到的核心原则。 Carl Danley是一位资深 Web 工程师,并编写了一系列有关 _JavaScript_ 设计模式的博客文章。模式提供了编写结构化、可扩展和可维护代码的清晰的方法,以及在开发大型 _JavaScript_ 应用时极其重要的理念。
令 _Carl_ 感到使用模式如此重要的一部分原因是:
- 模式是一种指代某个非常具体的代码实现的便捷方法。如果没有用于模式的词汇表,那么大家为了达成一致将需要额外的讨论,而模式则能够避免这一问题。
- 模式有助于在早期阶段克服枝节问题,从而避免它们拖到后期变成主要问题。
- 模式体现了一定程度的复杂性——能够同时提升性能并减少内存使用。
- 模式的建立经过严格的测试,而且在大多数情况下,能够解决特定类型的问题。
_Carl_ 引用了《学习_JavaScript_ 设计模式》的作者 Addy Osmani 的一段话:
对编写可维护代码来说,最重要的因素之一,是能够注意到代码中重复出现的主题,并对其进行优化。这个领域正是关于设计模式的知识的价值所在。
迄今为止,_Carl_ 已经在博客文章中讨论了以下模式:
_Carl_ 描述了每个模式的用途、主要的用例以及其优缺点,并为每个模式都编写了一个小型例程。他还打算在近期增加工厂模式、_Mixin_ 模式和装饰模式。
Carl_ 已经贡献了许多开源框架和类库,例如 _jQuery、WordPress、Backbone_ 和 _Angular.js。
评论