JavaScript设计模式入坑

元胞珊瑚
• 阅读 1444

JavaScript设计模式入坑

介绍

设计模式编写易于维护的代码。

设计模式的开创者是一位土木工程师。Σ( ° △ °|||)︴,写代码就是盖房子。

模式

模式一种可以复用的解决方案。解决软件设计中遇到的问题。

设计模式的结构

如何编写一个新的设计模式
一个设计模式将会产生如下的内容

模式名称

对模式名称的书写

上下文大纲

适用的上下文

问题陈述

对需要解决的问题进行陈述

解决方案

对问题的解决

设计

模式的设计

实现

如何实现该设计模式

插图

UML图表示

示例

最小模式的形式实现

辅助条件

需要哪些模式支撑该模式,即依赖

关系

像哪些模式,仿照哪些模式设计出的

已知的用法

是否广泛的使用。
在哪里使用。
如何使用

讨论

带来什么好处

编写设计模式

没有和使用该模式的交互和明确的解决方案即不是好的设计模式。
一旦熟悉了模式的相关信息即可以使用现有的格式编写模式。

例如 Christian Heilmann https://christianheilmann.com/ 创建的Revedling Module模式

模式的实用有多少?

需要哪些实践?

设计模式对用户来说为透明的。

需要有说服力

反模式

如果一个设计模式应用于错误的上下文中,为反模式,即一种错误的
例如下方的反模式

  1. 全局上下文中定义变量,没有使用闭包用来包裹变量
  2. 使用定时器来执行代码,会触发eval的问题。
  3. 修改Object类的原型
  4. 以内联的形式使用js
  5. 应该使用document.createElement()创建节点,而不是使用document.write

设计模式的类别

设计模式是基于面向对象的语言。但是核心在于解决实际遇到的问题。

创建型设计模式

处理对象的创建。用来创建对象。
构造器模式,工厂模式,抽象模式,原型模式,单例模式,生成器模式

上方使用过工厂模式

结构型设计模式

找出不同对象之间建立关系的简单方法。
装饰着模式,外观模式,享元模式,适配器模式,代理模式。

行为设计模式

系统中的对象的通信
迭代器模式,中介者模式,观察者模式,访问者模式。

点赞
收藏
评论区
推荐文章
徐小夕 徐小夕
5年前
《前端实战总结》之使用解释器模式实现获取元素Xpath路径的算法
前端领域里基于javascript的设计模式和算法有很多,在很多复杂应用中也扮演着很重要的角色,接下来就介绍一下javascript设计模式中的解释器模式,并用它来实现一个获取元素Xpath路径的算法。上期回顾《前端实战总结》之迭代器模式的N1种应用场景(https://juejin.im/post/6844904008616771591)
zdd小小菜鸟 zdd小小菜鸟
3年前
设计模式面试
设计模式面试1.单例设计模式使用设计模式为了代码复用,增加可维护性。设计模式的六大原则:开闭原则、里氏代换原则、依赖倒转原则、接口隔离原则、迪米特法则(最少知道原则)、合成/聚合复用原则Singleton(创建):保证一个类仅
Wesley13 Wesley13
4年前
java24种设计模式
一、设计模式定义  设计模式(DesignPattern)是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结,使用设计模式是为了可重用代码、让代码更容易被他人理解并且保证代码可靠性。二、设计模式分类  经典模式只有23个(还有简单工厂模式),它们各具特色,每个模式都为某一个可重复的设计问题提供了一套解决方案。  根据它们的用
九路 九路
5年前
Java实现 一篇文章说尽设计模式之六大原则
我们知道,设计模式很有用,学好设计模式不但能让你写出更简洁,优雅的代码,还能使得代码的结构更清晰,也更有利于扩展当然设计模式也不是万能的,一成不变的.设计模式只是前人总结出来的一种经验,一种特定问题的解决方法,不能看作是死的东西不一定非要生搬硬套,非得按照设计模式书上来来,只要我们写的代码符合一定的一些原则,一样可以看作是自己的模式.但是前人总结
海军 海军
4年前
JavaScript设计模式之单例模式
<sectionid"nice"datatool"mdnice编辑器"datawebsite"https://www.mdnice.com"style"fontsize:16px;color:black;lineheight:1.6;wordspacing:0px;letterspacing:0px;word
Paul05 Paul05
4年前
软件设计模式概述
01软件设计模式概述01软件设计模式概述软件设计模式的产生背景"设计模式"这个术语最初并不是出现在软件设计中,而是被用于建筑领域的设计中。1977年,美国著名建筑大师、加利福尼亚大学伯克利分校环境结构中心
Wesley13 Wesley13
4年前
Java 设计模式(1)
设计模式(Designpattern)是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。毫无疑问,设计模式于己于他人于系统都是多赢的,设计模式使代码编制真正工程化,设计模式是软件工程的基石,如同大厦的一块块砖石一样。项目中合理的运用设计模式可以完美的解决很多问题,每种
Wesley13 Wesley13
4年前
Java开发中的23种设计模式详解(转)
设计模式(DesignPatterns)                                 ——可复用面向对象软件的基础设计模式(Designpattern)是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。毫无疑问,设计模式于己于他
设计模式-单例模式概述 | 京东云技术团队
我们常把23种经典的设计模式分为三类:创建型、结构型、行为型,其中创建型设计模式主要解决“对象的创建”问题,将创建和使用代码解耦,结构型设计模式主要解决“类或对象的组合或组装”问题,将不同功能代码解耦,行为型设计模式主要解决“类或对象之间的交互”问题,将不
看动画,轻松学习23种C++设计模式完结无密
C设计模式深度解析:提升代码质量与可维护性的关键在C软件开发中,设计模式作为一种经过验证的软件开发方法,被广泛用于解决常见的设计问题,提高代码的可读性、可维护性和可扩展性。本文将深入探讨C中几种常用的设计模式,分析其原理、应用场景及实现方式,以