各位码友们,大家好!今天给大家介绍一个非常棒的学习设计模式的网站 - Patterns.dev
。
为什么要学设计模式?
-
面试过程中,设计模式是常被问到的知识点。面试官往往会通过考察候选人对设计模式的理解,来判断其对面向对象程序设计理念的掌握程度。
-
在实际开发中,我们常常在无意识使用一些设计模式,只是自己没有意识到而已。比如单例模式、工厂模式等,都是我们日常编码时可能会用到的模式。掌握设计模式有助于写出更加地道的面向对象代码。
-
设计模式可以被视为软件开发人员的"标准词汇"。了解这些词汇有助于开发人员之间更好地交流,提高团队的协作效率。同时,学习设计模式也是个人技术能力提升的一条捷径。
-
设计模式包含了面向对象编程的精髓,体现了对象之间灵活、高内聚、低耦合的设计原则。掌握了设计模式,就等于掌握了面向对象分析和设计的精要。
设计模式对于开发者来说是非常重要的!但相信很多人和我一样,对于设计模式这个知识点都有一种"爱恨交加"的情绪。它虽然非常重要,但传统很多设计模式的讲解过于学院化和理论化,缺乏生动有趣的实例和案例,让人难以产生共鸣,容易在学习中失去兴趣。
而 Patterns.dev
就很好地解决了这个难题。这个网站通过生动有趣的动画演示、可以直接运行的代码示例,以及贴近实战需求的亲和叙述方式,让设计模式的学习变得轻松易懂、趣味盎然。
动画视图转换-示例章节演示
这里举例网站中Rendering Pattern中关于讲解动画视图转换章节
为了讲解动画视图,作者先以目前流行的转场效果作为目标,如下:
然后由易到难分步去实现,以达到最终效果:
- 从最初简单的Toggle示例入手
实现中拆解了html,js 和 css 代码,并且代码中有详细的注释,去讲解动画的实现:
if (document.startViewTransition) {
// (check for browser support)
document.addEventListener("click", function (event) {
if (event.target.matches