JavaScript设计模式的简单理解

设计模式可以理解为一系列的代码框架,我觉得主要涉及封装的概念。把实现某一功能的代码段封装在函数中,可以方便调用,同时利于代码的复用,提高了代码的可维护性。下面简单介绍一下几种设计模式的个人感受。

1.单例模式

类似于一个类只有一个对象实例。 假设一个物品只能归属于一个人所有。。

2.构造函数模式

类似于c中的构造函数,可以创建特定类型的对象,然后对象里可以声明不同的变量及成员函数,还可以有不同的参数。就像我想做个凳子,我可以做成普通的凳子,有长宽高之类的属性及可以做的功能函数,此外我也可以做成高级一点的,比如说做个带有靠背的凳子,还有躺卧的功能之类的。。

3.建造者的模式

将复杂对象与其表示相分离,使得同样构建过程可以创建不同的表示。类似于盖房子,客户只需要给出想要的房子大致功能及样式,然后由设计者中间牵线,指导实施者来具体实现。可以理解为将复杂的对象逐步拆解为具体的小对象,然后再一个个实现、组装,从而达到复杂对象的实现,是否有点类似于分治算法。

4.工厂模式

定义一个用于创建对象的接口,这个接口由子类决定实例化哪一个类,而子类可以重写接口方法来指定自己的对象类型(复杂工厂),当然也可以不重写,直接根据不同的环境返回不同的对象(简单工厂)。。

5.代理模式

为其他对象提供一种代理以控制对这个对象的访问。类似于中介的位置,协调两个对象之间的交互,或者是直接充当一方的授权人的角色,全权处理某件事。。

6.命令模式

用来对方法调用进行参数化处理和传送,经过这样处理过的方法调用可以在任何需要的时候执行。即将函数的调用、请求和操作封装成一个单一的对象,然后对这个对象进行一系列的处理。类似董事长向总经理下达命令,然后总经理再向下面人分派具体任务。

初步接触设计模式,理解可能会有点偏差,进一步的体会还需要以后慢慢琢磨。

时间: 2024-10-27 00:43:55

JavaScript设计模式的简单理解的相关文章

大话设计模式总结(28种设计模式定义+简单理解)

大话设计模式这本书写的非常有创意,非常适合我这种新手.用了大约两个星期的时间看完了这本书,代码全部都敲了一遍,虽然没有一点基础,但是还是领略到了面向对象的威力.看完之后再也不想使用面向过程的语言了,比如VB,想当初我也是VB狂热者,但是现在我几乎不想再使用了.现在只想着写点什么用上它几种设计模式. 可能是第一次接触这些东西,有些感觉看懂了,但是很难应用到实际编程中:有些感觉没看懂,但是还能说出那么点东西来.听七期学长说他们当初看了两遍,要求能背着写出代码,不知道这次我们八期要求怎么这么低,我只看

设计模式的简单理解——单例模式

简单理解 单例模式是指进程生命期内,某个类型只实例化一个对象.这是一种通过语言特性实现的编程约束.如果没有约束,那么多人协同编码时,就会出现非预期的情况. 下面以内存池做例子,假设其类型名为MemoryPool.内存池的本意是统一管理全局内存,优化内存分配,提升性能,记录内存分配信息方便追溯问题,需要全局只有一个实例对象. 第一阶段:没有任何约束 因为没有任何约束,大家会各自实例化MemoryPool对象来使用.最终一片混乱,根本达不到最初使用内存池的目的. 第二阶段:编程语言外的约束 在Mem

javascript --- 递归的简单理解

递归函数大家都应该比较熟吧?那么,如何在JavaScript中书写一个完美的递归函数呢?且听我娓娓道来. 递归函数 写的时候,查了一下维基百科对递归函数的定义,恕我愚钝,简直太深奥了!所以,我还是简单的说说我对递归函数的理解吧.递归函数,说白了就是在函数内部引用函数自身,最终到给定的递归结束条件时回溯.当然,你也可以不给定结束条件,死了别挂我~(╯﹏╰)~. 简单说就是有两个条件: 1. 在函数内部引用自身. 2. 每个递归函数里必定有一个终止条件. 来个小李子: function test(n

javascript闭包的简单理解

奖Javascript闭包前,先给大家讲个小故事 故事背景:刘备和曹操煮酒的时间段,故事可能有点小差异,刘备为曹操手下,关羽为间谍. 咳咳 曹操很想知道手下新来的刘备整天鼓捣啥: 曹操就问刘备,玄德你整天鼓捣啥: 刘备想,我靠这怎么能告诉你,劳资岂不是找死,打个马虎眼就过去了,曹操什么也没问出来: 刘备回到家里,跟关羽说,二弟,哼,曹操那个傻吊,哼! 关羽晚上也回到家里,跟老婆说,哼,大哥那个傻吊,哼!我这就去告诉丞相: 曹操也不能罢休,就去问关羽,关羽正要去告密,就一五一十  ¥%…@?%%:

装饰设计模式的简单理解

//装饰设计模式.//不修改原对象,对原有对象的功能进行增强.class Person{    void chifan()    {        System.out.println("吃饭");    }} class NewPerson{    private Person p;    NewPerson(Person p)    {        this.p = p;    }    public void newChifan()    {        System.out

24种设计模式的简单理解

1.简单工厂模式 2.工厂方法模式 3.抽象工厂模式 4.建造者模式 5.原型模式 6.单例模式 7.适配器模式 8.桥接模式 9.组合模式 10.装饰模式 11.外观模式 12.享元模式 13.代理模式 14.职责链模式 15.命令模式 16.解释器模式 17.迭代器模式 18.中介者模式 19.备忘录模式 20.观察者模式 21.状态模式 22.策略模式 23.模板方法模式 24.访问者模式

设计模式-装饰模式简单理解

装饰模式是一种比较简单的模式,为什么要用它呢?怎么用呢? 前期需求:实现三个了A B C,定义相同的调用方法,客户可以有选择的调用任意一个. 我知道对接口编程,于是我定义了一个接口 interface O{ public void do(): } 然后我根据需求定义三个O的实现:A,B,C. 接下来的剧情: 1. 新需求来了:客户要在O的实现对象上增加功能F1或F2或F3. 怎么做?现在只有A B C三个,我用if else加上F1 F2 F3的支持: if(1) do F1 else if (

设计模式之简单理解装饰器模式与运用

1.什么是装饰器模式 ? 装饰器模式(Decorator Pattern)允许向一个现有的对象添加新的功能,同时又不改变其结构.这种类型的设计模式属于结构型模式,它是作为现有的类的一个包装. ? 这种模式创建了一个装饰类,用来包装原有的类,并在保持类方法签名完整性的前提下,提供了额外的功能. 2.装饰器模式的重要组成部分 ①装饰器模式特点: (1) 装饰对象和真实对象有相同的接口.这样客户端对象就能以和真实对象相同的方式和装饰对象交互. (2) 装饰对象包含一个真实对象的引用(reference

初识设计模式之--简单工厂

作为一个刚刚入门的菜鸟.虽只学到了些许编程语言的皮毛(或者连皮毛都算不上),但是随着时间和学习的深入,"设计模式"这一专业术语便慢慢浮现在眼前. 到底何为设计模式呢?它的出现将会给我们带来哪些帮助?......等等一系列问题便会出现在我们脑海中.俗话说:问题才是探究知识的钥匙.就让我们带着 自己的疑问一同来学习设计模式. 首先,我们先来认识一下什么是设计模式,以及运用设计模式的优点. 设计模式的简单理解:模式是在某一背景下某个问题的一种解决方案.1.复用解决方案——通过复用已经公认的设