SlideShare a Scribd company logo
KISSY Modularization
part 1
yiminghe@gmail.com
理论基础
• 模块是一致紧密相连的程序单元
• 模块提供功能,并描述自身所依赖的模块
• 模块具备高内聚,低耦合的特性
• 方便多人协作
传统的前端模块化
• page.html
• <html>
<link ref=‘stylesheet’/>
<link ref=‘stylesheet’/>
<div></div>
<div></div>
<script></script>
<script></script>
</html>
问题
• 线性结构,不符合直观

• css html javascript 互不相关
线性结构

模块1

模块2

模块3
理想的模块
• 树状结构,模块可依赖多个其他模块

• 一个模块包括 html css javascript 三部分,
也就是内聚的意思
树状结构
main

模块1
模块3

模块2
模块4

模块3
• KISSY Modularization
KISSY 模块化方案
• css + js + template = KISSY module
• package = modules

• 示例: https://github.com/yiminghe/kissyboilerplate
• http://localhost:8111/
• API
主要 api
• KISSY.add(function)
– 定义模块

• amd

• cmd
主要 api
• 使用模块
– KISSY.use(modules, function)
– KISSY.use(modules, {success, error})

• 环境配置
– KISSY.config()
环境配置的一些参数
• KISSY.config
– combine 优化相关
– alias 别名机制
– lang 全球化
– packages 包配置
• name 包名
• path 包路径
• charset 文件编码
• template
template
• xtemplate

compile
template

module
compile
• nodejs
• kissy-xtemplate -w –p src/
– src 下的 xx-tpl.html => xx-tpl.js (compiled
function)
– 业务模块 require(‘./xx-tpl’)
compiled template
• xx-tpl.html
• kissy-xtemplate –p ./
• xx-tpl.js
use compiled template
• conditional loader
conditional loader
• compatible(ie) module
conditional loader
• Touch modules
• gallery
• KISSY.use(‘gallery/xx/ver/’)
• Just use it!
Mini?
• API 简化版面向于浏览型 web page
– http://m.kissyui.com/

– http://g.assets.daily.taobao.net/kissy/m/0.
1.1/mini.js
未来的生态圈

loader
kissy

Mini

Gallery

• Dom

• Dom

• uploader

• Event

• Event

• Kcharts

• Base

• Anim

• Slide

• xtemplate

• Io

• Layer-anim

• Components

• …

• auth

• …

• …
• nodejs
nodejs
• npm install kissy@1.4.1-5

• var S = require(‘kissy’)
kissy modules on nodejs
• asynchronous
– S.use(modules, function)

• synchronous
– Like require on nodejs
– S.use(modules, {success:function, sync:true})

• KISSY 1.5 next
– require(‘kissy/lib/xtemplate’)
thanks

• 下节
– 模块加载优化

More Related Content

PPT
Xhtml 2 Introduction
Mayy May
 
PDF
2011新版首页总结 技术篇
传贵 谢
 
PDF
callSuper in kissy
yiming he
 
PDF
Hujs 总结
yiming he
 
PDF
kissy-past-now-future
yiming he
 
PDF
KISSY @ 2013-2
yiming he
 
PDF
KISSY for starter
yiming he
 
PDF
KISSY Component API Design
yiming he
 
Xhtml 2 Introduction
Mayy May
 
2011新版首页总结 技术篇
传贵 谢
 
callSuper in kissy
yiming he
 
Hujs 总结
yiming he
 
kissy-past-now-future
yiming he
 
KISSY @ 2013-2
yiming he
 
KISSY for starter
yiming he
 
KISSY Component API Design
yiming he
 

Similar to kissy modularization part1 (15)

PDF
Kissy模块化实践
yiming he
 
PDF
Kissy design
yiming he
 
PDF
Introduction to kissy for adc 2013
yiming he
 
PDF
Dive into kissy
jay li
 
PDF
kissy at alibaba
yiming he
 
PDF
Simple kissy1.3
yiming he
 
PDF
面向未来的前端类库开发 — KISSY 类库构想与实践
taobao.com
 
PDF
KISSY Mechanism
lifesinger
 
PDF
kissy@2013
yiming he
 
PDF
Kissy in-progress
yiming he
 
PDF
Kissy简介
jay li
 
PDF
How to reduce connections with kissy
yiming he
 
PDF
kissy 1.5 progress
yiming he
 
PDF
编辑器设计Kissy editor
taobao.com
 
Kissy模块化实践
yiming he
 
Kissy design
yiming he
 
Introduction to kissy for adc 2013
yiming he
 
Dive into kissy
jay li
 
kissy at alibaba
yiming he
 
Simple kissy1.3
yiming he
 
面向未来的前端类库开发 — KISSY 类库构想与实践
taobao.com
 
KISSY Mechanism
lifesinger
 
kissy@2013
yiming he
 
Kissy in-progress
yiming he
 
Kissy简介
jay li
 
How to reduce connections with kissy
yiming he
 
kissy 1.5 progress
yiming he
 
编辑器设计Kissy editor
taobao.com
 
Ad

More from yiming he (15)

PDF
kissy modularization part2
yiming he
 
PDF
KISSY 1.4.0 released
yiming he
 
PDF
KISSY XTemplate
yiming he
 
PDF
Kissy component system
yiming he
 
PDF
KISSY 1.3-released
yiming he
 
PDF
Kissy dpl-practice
yiming he
 
PDF
编辑器设计2
yiming he
 
PDF
KISSY Editor Design 2
yiming he
 
PDF
Kissy autocomplete
yiming he
 
PDF
KISSY_Component
yiming he
 
PPTX
Kissy mvc
yiming he
 
PPTX
Caja "Ka-ha" Introduction
yiming he
 
PDF
ARIA in taobao
yiming he
 
PDF
aria_with_kissy
yiming he
 
kissy modularization part2
yiming he
 
KISSY 1.4.0 released
yiming he
 
KISSY XTemplate
yiming he
 
Kissy component system
yiming he
 
KISSY 1.3-released
yiming he
 
Kissy dpl-practice
yiming he
 
编辑器设计2
yiming he
 
KISSY Editor Design 2
yiming he
 
Kissy autocomplete
yiming he
 
KISSY_Component
yiming he
 
Kissy mvc
yiming he
 
Caja "Ka-ha" Introduction
yiming he
 
ARIA in taobao
yiming he
 
aria_with_kissy
yiming he
 
Ad

kissy modularization part1