美文网首页JavaScript学习笔记Web前端之路让前端飞
javascript开放-封闭原则-NBA常规赛结束

javascript开放-封闭原则-NBA常规赛结束

作者: smartphp | 来源:发表于2016-12-22 09:31 被阅读104次

在面向对象程序(OOP)设计中,开放-封闭原则(OCP)是最重要的原则,一个oop的程序具有良好的设计,往往说明它是符合开放-封闭原则的.
参考《javascript模式设计与开发实践》第20章
首先看一个代码.开放封闭是相互关联的在一段代码中既要体现封闭又要体现开放。封闭不破坏旧功能,开放有可以添加新功能。

//下面这个函数是修饰模式,在函数运行后添加功能
//通过这个函数,添加的功能不影响原函数的功能
Function.prototype.after = function( afterfn ){
        var __self = this;
        return function(){
            var ret = __self.apply( this, arguments );
            afterfn.apply( this, arguments );
            return ret;
        }
    };
    
    //如果多人开发,都要在window.onload下挂载函数功能(原生的js代码
    //只能加载一次window.load函数)。很有可能别人也在使用.
    //要解决这个问题可以结合after函数和函数引用赋值来解决这个问题
    //如果windoW.load已经挂载有内容,就引用赋值,然后使用after
    //如果没有使用则直接引用空函数对象,然后挂载after函数
    //无论哪种情况,通过after函数的
    window.onload = ( window.onload || function(){} ).after(function(){
        console.log( document.getElementsByTagName( '*' ).length );
    });

但是在实际应用中使用开放-封闭原则很困难,关键是要找到程序在哪里发生变化,这不是一朝一夕之功。所以道理很简单,但是应用起来可能很困难。长路漫漫啊。

至此本人基本把javascript的模式设计的内容过了一遍。可以说收获良多,学到很多东西。阅读代码和分析代码的能力有了提高,好像是在NBA的赛场上,通过解说员的一些战术分析,慢慢看明白了一些跑位和战术,对于一个球迷来说在这种情况下看比赛就不光光是看热闹了,比赛有了更深层次的意义,此时的心情就是有想看更多比赛来验证下一场比赛是否也会出现同样的战术。
但这也只是一个起点而已,过一年肯能会觉得现在写的这些文章很幼稚很傻比。就拿这些学习笔记记录这个傻逼的过程吧.

NBA常规赛结束了,还有季后赛和下一赛季等着呢。

相关文章

  • javascript开放-封闭原则-NBA常规赛结束

    在面向对象程序(OOP)设计中,开放-封闭原则(OCP)是最重要的原则,一个oop的程序具有良好的设计,往往说明它...

  • 开放封闭原则

    本文是对敏捷软件开发第九章开发-封闭原则的学习笔记。 一句话,软件实体应该是可扩展但是不可修改的。 对于扩展是开放...

  • 开放-封闭原则

    对修改关闭,对增加开放

  • 开放 — 封闭原则

    在软件设计模式中,这种不能修改,但可以扩展的思想是重要的一种设计原则,是开放—封闭原则(The Open-Clos...

  • 六大设计原则-开放封闭原则

    开放封闭原则 Open Closed Principle 简称OCP 什么是开放封闭原则 软件实体(类,模块,方法...

  • 装饰器1

    开放封闭原则 讲装饰器之前我们先来了解一下开放封闭原则 开放封闭原则:软件实体应该是可扩展,而不可修改的。也就是说...

  • 替代工厂模式的方法

    前言 开放封闭原则,要求程序的扩展是开放的,程序的修改是封闭的。做到开放封闭的原则通常是针对抽象编程而不是具体编程...

  • CRM知识点整理(一)

    单例的实现方式 文件导入 类方法 反射的应用 importlib getattr 开放封闭原则 开放封闭原则(OC...

  • 第4章 考研求职两不误--开放-封闭原则

    开放-封闭原则 开放-封闭原则,是说软件实体(类、模块、函数等等)应该可以扩展,但是不可修改。 这个原则其实是有两...

  • 前端之路

    把握代码质量,写出优雅,可读性高,易维护,符合开放-封闭原则的代码了解掌握javascript常用的设计模式,并能...

网友评论

  • smartphp:好的,多谢
  • 4e5f67d086be:还没结束呢。。早着呢。。
    4e5f67d086be: @smartphp 哦哦哦。。。好吧 加油了。。看到好多你在简书上发表的文章 很不错 继续努力😀
    smartphp: @逝水流光 😀我意思是我这个系列的读书笔记结束了,要进行下一个阶段了。

本文标题:javascript开放-封闭原则-NBA常规赛结束

本文链接:https://www.haomeiwen.com/subject/zwpcvttx.html