Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
From Pie to Cake ⺫⽬目录规范的设计思路 13年5月30⽇日星期四
Slide 2
Slide 2 text
本次分享涉及到的 • 代码组织 • 可重⽤用 • 可维护 • 代码构建 13年5月30⽇日星期四
Slide 3
Slide 3 text
新发布机制 • KISSY Pie 之前是⽤用 时间戳⺫⽬目录 的⽅方式 解决不覆盖的问题 • 新发布机制 每次发布⽣生成⼀一个新的Tag, 发布不能覆盖 13年5月30⽇日星期四
Slide 4
Slide 4 text
http://a.tbcdn.cn/g/ {group}/{repo}/{tag}/xxx.js 格式 x.x.x 不能覆盖发布 新发布机制 13年5月30⽇日星期四
Slide 5
Slide 5 text
⻚页⾯面 模块 13年5月30⽇日星期四
Slide 6
Slide 6 text
KISSY Cake 多⻚页⾯面*的应⽤用 home list detail 13年5月30⽇日星期四
Slide 7
Slide 7 text
给⻚页⾯面添加版本 home V1 13年5月30⽇日星期四
Slide 8
Slide 8 text
常⻅见的⼏几个场景 • 只需⽇日常维护 • 重⼤大改动,改版升级 • 两者同时进⾏行 13年5月30⽇日星期四
Slide 9
Slide 9 text
+ + + + V2 常⻅见的⼏几个场景 在原有代码上 修改 项⺫⽬目,或⼤大的 改版 ⽇日常与项⺫⽬目同 时进⾏行 V1 13年5月30⽇日星期四
Slide 10
Slide 10 text
Page⺫⽬目录 KISSY的 包⺫⽬目录 ⻚页⾯面的版 本⺫⽬目录 锁⺫⽬目录下的 第⼀一层⽂文件是 ⼊入⼝口⽂文件 ⾮非根⺫⽬目录⽂文件是 锁内模块,只能被 当前锁内⽂文件引⽤用 13年5月30⽇日星期四
Slide 11
Slide 11 text
模块 13年5月30⽇日星期四
Slide 12
Slide 12 text
模块 • JS:KISSY 模块, ⾮非 KISSY 脚本 • 样式:CSS,Sass,Less • HTML: Kissy Template, KISSY XTemplate 13年5月30⽇日星期四
Slide 13
Slide 13 text
模块与⻚页⾯面 utils page mods 13年5月30⽇日星期四
Slide 14
Slide 14 text
各种模块的关系 page utils 通⽤用 复杂 widget 13年5月30⽇日星期四
Slide 15
Slide 15 text
模块对⽐比 • page mod: ⼀一个⻚页⾯面独享的模块 ⽐比如:⻚页⾯面独享的业务逻辑 • utils mod: 多⻚页⾯面共⽤用, 基础性的, 只 能被间接使⽤用的,本⾝身不打包 ⽐比如: 埋点模块, 统⼀一的数据处理,通⽤用的业务逻辑, 基础样式库等 • widget: 复杂,独⽴立模块 可以被懒加载, 可实现单独的功能, ⽐比如投票箱,侧边栏等 13年5月30⽇日星期四
Slide 16
Slide 16 text
Utils ⺫⽬目录 13年5月30⽇日星期四
Slide 17
Slide 17 text
Widget ⺫⽬目录 每个widget 模块,放在单 独⽂文件夹下 ⼊入⼝口⽂文件 13年5月30⽇日星期四
Slide 18
Slide 18 text
Common ⺫⽬目录 13年5月30⽇日星期四
Slide 19
Slide 19 text
整体⺫⽬目录结构 13年5月30⽇日星期四
Slide 20
Slide 20 text
整体架构 13年5月30⽇日星期四
Slide 21
Slide 21 text
Kissy Pie 的架构 use Page Common Utils 13年5月30⽇日星期四
Slide 22
Slide 22 text
Kissy Cake 优化后 13年5月30⽇日星期四
Slide 23
Slide 23 text
Kissy Cake的架构 use Common Utils Widget Page 13年5月30⽇日星期四
Slide 24
Slide 24 text
四类核⼼心⺫⽬目录说明 说明 page common widget utils ⻚页⾯面层级的资源 应⽤用层级可直接引⽤用的通⽤用资源 应⽤用层级的组件 应⽤用层级的基础⼯工具模块 13年5月30⽇日星期四
Slide 25
Slide 25 text
与 KISSY Pie 的对⽐比 • 去掉了时间戳⺫⽬目录 • 根⺫⽬目录添加src 与 build ⺫⽬目录, 构建后的代码 全部在Build⺫⽬目录⾥里⾯面, 源码更干净 • 所有⻚页⾯面从根⺫⽬目录移⼊入 src/pages ⺫⽬目录,结构更 清晰 • 添加了Widget⺫⽬目录, 提供懒加载和负责模块 的⽀支持 • ⻚页⾯面版本 由 1.0 > 变 成 v1 13年5月30⽇日星期四
Slide 26
Slide 26 text
Tools Support 13年5月30⽇日星期四
Slide 27
Slide 27 text
Yeoman + Grunt ⽣生成 打包 13年5月30⽇日星期四
Slide 28
Slide 28 text
ABC UI 13年5月30⽇日星期四
Slide 29
Slide 29 text
ABC UI Grunt Yeoman 13年5月30⽇日星期四
Slide 30
Slide 30 text
Thanks & QA 13年5月30⽇日星期四