《JavaScript框架设计》——导读

简介: 。以前的程序员们,经常会为了做一个数据处理程序而自己开发一门编程语言。如Charls Moore,他在美国国家天文台做射电望远镜数据提取程序时开发了Forth;高德纳为了让自己写的书排版漂亮些,写了TeX;DHH为了做网站写了Rails……如果连写一个控件都要百度或Google查找答案,那水平不容易提高。


screenshot

**
前言
**
首先说明一下,本书虽是讲解框架设计,但写个框架不是很深奥的事情,重点是建立更为完整的前端知识树。只有自己尝试写个框架,才有机会接触像原型、作用域、事件代理、缓存系统、定时器等深层知识,也才有机会了解applyElement、swapNode、importNode、removeNode、replaceNode、insertAdjacentHTML、createContextualFragment、runtimeStyle等偏门API,也才会知晓像getElementById、getElementsByTagName、setAttribute、innerHTML存在大量的Bug,当然你也可以尝试最近几年浏览器带来的新API(包括ECMA262v5、v6、HTML5或大量误认为是HTML5的新模块),如Object.defineProperty、CSS.supports、WebKitShadowRoot、getDefaultComputedStyle……

虽然这难免落入“造轮子”的怪圈中,但“造轮子”在这世界却是出奇普遍。一般创造性的活动,一开始都是临摹他人的作品。就算不“造轮子”,也要收集一大堆“轮子”,作家有他的素材集,设计师有大量icon与笔刷,普通的“码农”也有个commonjs存放着一些常用的函数。以前的程序员们,经常会为了做一个数据处理程序而自己开发一门编程语言。如Charls Moore,他在美国国家天文台做射电望远镜数据提取程序时开发了Forth;高德纳为了让自己写的书排版漂亮些,写了TeX;DHH为了做网站写了Rails……如果连写一个控件都要百度或Google查找答案,那水平不容易提高。

当前很少有技术书教你写框架的,即便是众多的Java类图书,大多数也是教你如何深入了解SHH的运作机理。

如果你是这两三年才接触JavaScript,那恭喜你了。现在JavaScript的应用洪荒时代已经过去,Portotype.js的幕府“统治”也已结果,且已迎来非常强势的jQuery纪元,有大量现成的插件可用,许多公司都用jQuery,意味着我们的技术有了用武之地。

但事实上还是要通过调试程序获得经验,只从JavaScript书上学习的那些知识点没法明白jQuery的源代码。

许多大公司的架构师根据技术发展的情况,他们都有自己一套或几套JavaScript底层库,各个部门视情况还发展针对于自己业务的UI库。而企业开发中,UI库就像流水线那样重要。而底层库只是一个好用的“锤子”或“胶钳”。要想迅速上手这么多公司框架,基础知识无疑是非常重要的。假若之前自己写过框架,那就有了经验。道理是一样的,框架设计的一些“套路”肯定存在的。本书就是把这些“潜规则”公开出来,迅速让自己成长为技术达人。

目录

**[第 1 章 种子模块
1.1 命名空间](https://yq.aliyun.com/articles/96577)**
1.2 对象扩展
1.3 数组化
1.4 类型的判定
1.5 主流框架引入的机制——domReady
1.6 无冲突处理
**[第 2 章  模块加载系统
2.1 AMD规范](https://yq.aliyun.com/articles/96632)**
2.2 加载器所在路径的探知
2.3 require方法
2.4 define方法

相关文章
|
安全 JavaScript 前端开发
Javascript框架库漏洞验证
Javascript框架库漏洞验证
2416 0
Javascript框架库漏洞验证
|
2月前
|
JavaScript
Node.js【GET/POST请求、http模块、路由、创建客户端、作为中间层、文件系统模块】(二)-全面详解(学习总结---从入门到深化)
Node.js【GET/POST请求、http模块、路由、创建客户端、作为中间层、文件系统模块】(二)-全面详解(学习总结---从入门到深化)
27 0
|
2月前
|
消息中间件 Web App开发 JavaScript
Node.js【简介、安装、运行 Node.js 脚本、事件循环、ES6 作业队列、Buffer(缓冲区)、Stream(流)】(一)-全面详解(学习总结---从入门到深化)
Node.js【简介、安装、运行 Node.js 脚本、事件循环、ES6 作业队列、Buffer(缓冲区)、Stream(流)】(一)-全面详解(学习总结---从入门到深化)
77 0
|
3天前
|
JavaScript 前端开发 测试技术
学习JavaScript
【4月更文挑战第23天】学习JavaScript
11 1
|
11天前
|
JavaScript 前端开发 应用服务中间件
node.js之第一天学习
node.js之第一天学习
|
1月前
|
运维 JavaScript 前端开发
发现了一款宝藏学习项目,包含了Web全栈的知识体系,JS、Vue、React知识就靠它了!
发现了一款宝藏学习项目,包含了Web全栈的知识体系,JS、Vue、React知识就靠它了!
|
1月前
|
JavaScript
Vue.js学习详细课程系列--共32节(4 / 6)
Vue.js学习详细课程系列--共32节(4 / 6)
35 0