思考:设计模式对前端有用吗?
先说结论:设计模式(design pattern)在前端开发中是非常有用的。
更广泛地说,设计模式无论对前端还是后端程序开发而言,都是非常有用的。设计模式并不是专门为前端或后端而提出的,而是对软件设计中普遍存在的各种问题,所提出的解决方案。
说得再宽泛一点,设计模式甚至不是专门为软件开发提出的,其诞生的灵感受到了建筑设计的启发。设计模式一词中的 “模式”(Pattern)一词,在建筑学中是指一套解决特定问题的方案。
这种概念最早由建筑学家克里斯托弗·亚历山大(Christopher Alexander)在他的著作《A Pattern Language》中提出。在这本书中,亚历山大描述了一系列在建筑设计中经常出现的问题,并提出了相应的解决方案,这些解决方案被称为 “模式”。
受克里斯托弗·亚历山大的启发,在 20 世纪 90 年代初,四位著名的软件工程师 Erich Gamma、Richard Helm、Ralph Johnson 和 John Vlissides,通常被称为 “Gang of Four”(GoF),合作编写了一本书《Design Patterns: Elements of Reusable Object-Oriented Software》(设计模式:可复用面向对象软件的基础),将 “模式” 的概念引入到软件工程中,旨在为常见的软件设计问题提供经过验证的解决方案。
