Giter Club home page Giter Club logo

javascript.patterns's Introduction

JavaScript Patterns

JavaScript.patterns

“JavaScript patterns”中译本 - 《JavaScript 模式》

偷懒是程序员的优良品质,模式则是先人们总结的偷懒招式。Stoyan Stefanov 的这本书,从 JavaScript 的实际使用场景出发,提炼了不少可以让前端们偷懒的实用招式。模式的探索、创新,将永远是程序员自我提升的一条修炼之道。值得一读。

目录

第五章 对象创建模式

  • 命名空间模式
    • 通用的命名空间函数
  • 声明依赖
  • 私有属性和方法
    • 私有成员
    • 特权方法
    • 私有化失败
    • 对象直接量及其私有成员
    • 原型及其私有成员
    • 将私有函数暴露为共有方法
  • 模块模式
    • 暴露模块模式
    • 创建构造器的模块
    • 在模块中引入全局上下文
  • 沙箱模式
    • 全局构造函数
    • 添加模块
    • 实现这个构造函数
  • 静态成员
    • 共有静态成员
    • 私有静态成员
  • 对象常量
  • 链式调用模式
    • 链式调用模式的利弊
  • method() 方法
  • 小节

第六章 代码重用模式

  • 类式继承 vs 现代继承模式
  • 类式继承的期望结果
  • 经典模式 1 ——默认模式
    • 使用原型链
    • 模式 1 的缺陷
  • 经典模式 2 ——借用构造器
    • 原型连
    • 通过借用构造函数实现多重继承
    • 借用构造器模式的利弊
  • 经典模式 3 ——借用并设置原型
  • 经典模式 4 ——共享原型
  • 经典模式 5 —— 临时构造器
    • 存储父类
    • 重置构造器引用
  • Klass
  • 原型继承
    • 讨论
    • 除了ECMAScript5之外
  • 通过拷贝属性继承
  • 混元
  • 借用方法
    • 例子:从数组借用
    • 借用和绑定
    • Function.prototype.bind()
  • 小节

第七章 设计模式

  • 单体
    • 使用 new
    • 静态属性中的实例
    • 闭包中的实例
  • 工厂
    • 内置对象工厂
  • 迭代器
  • 装饰者
    • 用法
    • 实现
    • 使用列表实现
  • 策略
    • 数据校验的例子
  • 外观
  • 代理
    • 一个例子
    • 作为缓存的代理
  • 中介者
    • 中介者例子
  • 观察者
    • 例子 1:杂志订阅
    • 例子 2:按键游戏
  • 小节

第八章 DOM和浏览器模式

  • 分离关注点
  • DOM 脚本编程
    • DOM访问
    • DOM操作
  • 事件
    • 事件处理
    • 事件委托
  • 长时间运行的脚本
    • setTimeout()
    • Web Workers
  • 远程脚本
    • XMLHttpRequest
    • JSONP
    • Frame和Image加载指示器
  • 部署JavaScript
    • 合并脚本
    • 代码减肥和压缩
    • 过期头
    • 使用CDN
  • 加载策略
    • script标签的位置
    • HTTP 分块
    • 动态插入script标签非阻塞载入脚本
    • 延迟加载
    • 按需加载
    • 预加载
  • 小节

索引

javascript.patterns's People

Contributors

jayli avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.