SlideShare uma empresa Scribd logo
1 de 20
Baixar para ler offline
Yet Another Frontend Module
          System
       July 2011 @W3CTech
此前...
●   海贝网: CommonJS 实践
    http://www.slideshare.net/winnersong/java-script-84
●   白社会: 视图模式
    http://www.slideshare.net/slalx/ss-6377470
XKCD: Standards
理解基础
●   “We must go deeper”
●   协议: HTTP
●   浏览器环境
●   库与框架
●   一点计算机科学
●   没什么神秘的
解决问题
●   敏感
●   迭代前进
●   简单实现
问题:
声明 & 加载依赖
<script src=”/js/jquery-1.6.2.js”>
<!-- 依赖关系 = “项目经验” -->
<script src=”/js/ads.js”>
KISSY
# /src/node/base.js

KISSY.add('node/base', function(S,
DOM) {
  return { ... }
}, {
  requires: [“dom”]
})
问题:
打字太多
预处理
●   宏( C, Lisp)
●   源代码编译到线上代码
●   JS 没有...自行设计
MooTools

# /Source/Element/Element.js
/*
---
requires: [Window, Document, …]
provides: [Element, Elements, …]
---
*/
MooTools Builder




./packager build Core/Element
问题:
构建
中间件
●   服务器端
●   “ 动态”响应请求
●   责任链模式
●   Python – WSGI, Ruby – Rack ...
问题:
调试
抽象
●   “ 暂时不关心”
●   产品开发: 不关心 JS 文件的引入方式
●   开发环境: 分别引入文件
●   生产环境: 提前拼接/压缩
●   单一职责原则
问题:
CSS? 图片?
取舍
成
本




         时
         间
TL;DR
●   自己写一个
●   横向扩展
●   对问题敏感
更多



通用 JS 时代的模块机制和编译工具 – @ dexteryy
http://www.slideshare.net/dexter_yy/js-6228773

静态网页资源的管理和优化 – David Wei (Facebook)
http://goo.gl/n9HBw

Mais conteúdo relacionado

Mais procurados

使用kslite支持第三方内容开发
使用kslite支持第三方内容开发使用kslite支持第三方内容开发
使用kslite支持第三方内容开发
leneli
 
D2-ETao-show
D2-ETao-showD2-ETao-show
D2-ETao-show
leneli
 
KISSY_Component
KISSY_ComponentKISSY_Component
KISSY_Component
yiming he
 
Kindeditor 设计思路
Kindeditor 设计思路Kindeditor 设计思路
Kindeditor 设计思路
luolonghao
 

Mais procurados (20)

NodeJS基礎教學&簡介
NodeJS基礎教學&簡介NodeJS基礎教學&簡介
NodeJS基礎教學&簡介
 
Introduction to NodeJS
Introduction to NodeJSIntroduction to NodeJS
Introduction to NodeJS
 
Node.js中间件 connect模块深入浅出
Node.js中间件 connect模块深入浅出Node.js中间件 connect模块深入浅出
Node.js中间件 connect模块深入浅出
 
淘宝网前端开发面试题
淘宝网前端开发面试题 淘宝网前端开发面试题
淘宝网前端开发面试题
 
使用Bigpipe提升浏览速度
使用Bigpipe提升浏览速度使用Bigpipe提升浏览速度
使用Bigpipe提升浏览速度
 
Web教程2
Web教程2Web教程2
Web教程2
 
使用kslite支持第三方内容开发
使用kslite支持第三方内容开发使用kslite支持第三方内容开发
使用kslite支持第三方内容开发
 
Web dev road map part one
Web dev road map part oneWeb dev road map part one
Web dev road map part one
 
哥寫的不是程式,是軟體 - 從嵌入式系統看軟體工程全貌
哥寫的不是程式,是軟體 - 從嵌入式系統看軟體工程全貌哥寫的不是程式,是軟體 - 從嵌入式系統看軟體工程全貌
哥寫的不是程式,是軟體 - 從嵌入式系統看軟體工程全貌
 
Java script 全面逆襲!使用 node.js 打造桌面環境!
Java script 全面逆襲!使用 node.js 打造桌面環境!Java script 全面逆襲!使用 node.js 打造桌面環境!
Java script 全面逆襲!使用 node.js 打造桌面環境!
 
微服務架構 導入經驗分享 吳剛志 - Community Open Camp
微服務架構 導入經驗分享 吳剛志 - Community Open Camp微服務架構 導入經驗分享 吳剛志 - Community Open Camp
微服務架構 導入經驗分享 吳剛志 - Community Open Camp
 
Codeception test
Codeception testCodeception test
Codeception test
 
D2-ETao-show
D2-ETao-showD2-ETao-show
D2-ETao-show
 
KISSY_Component
KISSY_ComponentKISSY_Component
KISSY_Component
 
新员工培训
新员工培训新员工培训
新员工培训
 
微服務的基礎建設 - Service Discovery, Andrew Wu
微服務的基礎建設 - Service Discovery, Andrew Wu微服務的基礎建設 - Service Discovery, Andrew Wu
微服務的基礎建設 - Service Discovery, Andrew Wu
 
Angular js入门分享 by 王栋
Angular js入门分享   by 王栋Angular js入门分享   by 王栋
Angular js入门分享 by 王栋
 
IDDD Ch.09 Module
IDDD Ch.09 ModuleIDDD Ch.09 Module
IDDD Ch.09 Module
 
輕鬆上手ASP.NET Web API 2.1.2
輕鬆上手ASP.NET Web API 2.1.2輕鬆上手ASP.NET Web API 2.1.2
輕鬆上手ASP.NET Web API 2.1.2
 
Kindeditor 设计思路
Kindeditor 设计思路Kindeditor 设计思路
Kindeditor 设计思路
 

Destaque

一个前端Js模板引擎的实现和优化
一个前端Js模板引擎的实现和优化一个前端Js模板引擎的实现和优化
一个前端Js模板引擎的实现和优化
tblanlan
 
Yui3在美团 2
Yui3在美团 2Yui3在美团 2
Yui3在美团 2
Kai Cui
 
前端专利那些事儿
前端专利那些事儿前端专利那些事儿
前端专利那些事儿
tblanlan
 
Javascript template
Javascript templateJavascript template
Javascript template
Kai Cui
 
GitLab—the new workbench
GitLab—the new workbenchGitLab—the new workbench
GitLab—the new workbench
tblanlan
 

Destaque (6)

一个前端Js模板引擎的实现和优化
一个前端Js模板引擎的实现和优化一个前端Js模板引擎的实现和优化
一个前端Js模板引擎的实现和优化
 
Yui3在美团 2
Yui3在美团 2Yui3在美团 2
Yui3在美团 2
 
前端专利那些事儿
前端专利那些事儿前端专利那些事儿
前端专利那些事儿
 
Javascript template
Javascript templateJavascript template
Javascript template
 
GitLab—the new workbench
GitLab—the new workbenchGitLab—the new workbench
GitLab—the new workbench
 
用十分鐘瞭解 陳鍾誠的程式設計課 (採用JavaScript + C的原因)
用十分鐘瞭解  陳鍾誠的程式設計課  (採用JavaScript + C的原因)用十分鐘瞭解  陳鍾誠的程式設計課  (採用JavaScript + C的原因)
用十分鐘瞭解 陳鍾誠的程式設計課 (採用JavaScript + C的原因)
 

Semelhante a July.2011.w3ctech

浅析浏览器解析和渲染
浅析浏览器解析和渲染浅析浏览器解析和渲染
浅析浏览器解析和渲染
Ailsa126
 
OPOA in Action -- 使用MagixJS简化WebAPP开发
OPOA in Action -- 使用MagixJS简化WebAPP开发OPOA in Action -- 使用MagixJS简化WebAPP开发
OPOA in Action -- 使用MagixJS简化WebAPP开发
leneli
 
Javascript primer plus
Javascript primer plusJavascript primer plus
Javascript primer plus
Dongxu Yao
 
美团前端架构简介
美团前端架构简介美团前端架构简介
美团前端架构简介
pan weizeng
 
Node.js在淘宝的应用实践
Node.js在淘宝的应用实践Node.js在淘宝的应用实践
Node.js在淘宝的应用实践
taobao.com
 
使用Javascript及HTML5打造協同運作系統
使用Javascript及HTML5打造協同運作系統使用Javascript及HTML5打造協同運作系統
使用Javascript及HTML5打造協同運作系統
Hsu Ping Feng
 
前端性能测试
前端性能测试前端性能测试
前端性能测试
tbmallf2e
 
赶集团购开发总结4
赶集团购开发总结4赶集团购开发总结4
赶集团购开发总结4
yangdj
 
Node js feat pegasus
Node js feat pegasusNode js feat pegasus
Node js feat pegasus
cnfi
 
【项目分享】赶集移动Web App开发总结
【项目分享】赶集移动Web App开发总结 【项目分享】赶集移动Web App开发总结
【项目分享】赶集移动Web App开发总结
yangdj
 
D2_node在淘宝的应用实践_pdf版
D2_node在淘宝的应用实践_pdf版D2_node在淘宝的应用实践_pdf版
D2_node在淘宝的应用实践_pdf版
Jackson Tian
 

Semelhante a July.2011.w3ctech (20)

建立前端开发团队 (Front-end Development Environment)
建立前端开发团队 (Front-end Development Environment)建立前端开发团队 (Front-end Development Environment)
建立前端开发团队 (Front-end Development Environment)
 
浅析浏览器解析和渲染
浅析浏览器解析和渲染浅析浏览器解析和渲染
浅析浏览器解析和渲染
 
OPOA in Action -- 使用MagixJS简化WebAPP开发
OPOA in Action -- 使用MagixJS简化WebAPP开发OPOA in Action -- 使用MagixJS简化WebAPP开发
OPOA in Action -- 使用MagixJS简化WebAPP开发
 
模块加载策略 - 2012 SDCC, 北京
模块加载策略 - 2012 SDCC, 北京模块加载策略 - 2012 SDCC, 北京
模块加载策略 - 2012 SDCC, 北京
 
前端性能优化和自动化
前端性能优化和自动化前端性能优化和自动化
前端性能优化和自动化
 
Javascript primer plus
Javascript primer plusJavascript primer plus
Javascript primer plus
 
美团前端架构简介
美团前端架构简介美团前端架构简介
美团前端架构简介
 
Node.js在淘宝的应用实践
Node.js在淘宝的应用实践Node.js在淘宝的应用实践
Node.js在淘宝的应用实践
 
Kissy design
Kissy designKissy design
Kissy design
 
使用Javascript及HTML5打造協同運作系統
使用Javascript及HTML5打造協同運作系統使用Javascript及HTML5打造協同運作系統
使用Javascript及HTML5打造協同運作系統
 
Beyond rails server
Beyond rails serverBeyond rails server
Beyond rails server
 
淘宝前端开发关键词
淘宝前端开发关键词淘宝前端开发关键词
淘宝前端开发关键词
 
前端性能测试
前端性能测试前端性能测试
前端性能测试
 
赶集团购开发总结4
赶集团购开发总结4赶集团购开发总结4
赶集团购开发总结4
 
Full stack-development with node js
Full stack-development with node jsFull stack-development with node js
Full stack-development with node js
 
Html5和css3入门
Html5和css3入门Html5和css3入门
Html5和css3入门
 
Node js feat pegasus
Node js feat pegasusNode js feat pegasus
Node js feat pegasus
 
【项目分享】赶集移动Web App开发总结
【项目分享】赶集移动Web App开发总结 【项目分享】赶集移动Web App开发总结
【项目分享】赶集移动Web App开发总结
 
D2_node在淘宝的应用实践_pdf版
D2_node在淘宝的应用实践_pdf版D2_node在淘宝的应用实践_pdf版
D2_node在淘宝的应用实践_pdf版
 
移动Web开发框架jqm探讨
移动Web开发框架jqm探讨移动Web开发框架jqm探讨
移动Web开发框架jqm探讨
 

July.2011.w3ctech