Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
KissyCake
Search
d2forum
June 04, 2013
3
730
KissyCake
目录规范的设计思路 —— 文龙
d2forum
June 04, 2013
Tweet
Share
More Decks by d2forum
See All by d2forum
TMS的PHP特性
d2forum
0
1.5k
Leap Motion体感实战
d2forum
0
1.2k
跨终端产品实践
d2forum
12
1.9k
Touching Future—s01-e01
d2forum
2
880
贡献标准.s01.e02
d2forum
3
1.3k
一淘响应式设计实践
d2forum
10
950
响应式web设计与实现介绍
d2forum
8
780
定制版设计开发vs响应式设计开发
d2forum
0
160
定制版设计开发vs响应式设计开发之性能及流量
d2forum
2
410
Featured
See All Featured
It's Worth the Effort
3n
180
27k
5 minutes of I Can Smell Your CMS
philhawksworth
199
19k
Done Done
chrislema
178
15k
Infographics Made Easy
chrislema
238
18k
The Straight Up "How To Draw Better" Workshop
denniskardys
227
130k
GitHub's CSS Performance
jonrohan
1025
450k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
14
1.5k
Why Our Code Smells
bkeepers
PRO
331
56k
Mobile First: as difficult as doing things right
swwweet
216
8.6k
Reflections from 52 weeks, 52 projects
jeffersonlam
345
19k
For a Future-Friendly Web
brad_frost
172
9k
Product Roadmaps are Hard
iamctodd
44
9.7k
Transcript
From Pie to Cake ⺫⽬目录规范的设计思路 13年5月30⽇日星期四
本次分享涉及到的 • 代码组织 • 可重⽤用 • 可维护 • 代码构建 13年5月30⽇日星期四
新发布机制 • KISSY Pie 之前是⽤用 时间戳⺫⽬目录 的⽅方式 解决不覆盖的问题 • 新发布机制
每次发布⽣生成⼀一个新的Tag, 发布不能覆盖 13年5月30⽇日星期四
http://a.tbcdn.cn/g/ {group}/{repo}/{tag}/xxx.js 格式 x.x.x 不能覆盖发布 新发布机制 13年5月30⽇日星期四
⻚页⾯面 模块 13年5月30⽇日星期四
KISSY Cake 多⻚页⾯面*的应⽤用 home list detail 13年5月30⽇日星期四
给⻚页⾯面添加版本 home V1 13年5月30⽇日星期四
常⻅见的⼏几个场景 • 只需⽇日常维护 • 重⼤大改动,改版升级 • 两者同时进⾏行 13年5月30⽇日星期四
+ + + + V2 常⻅见的⼏几个场景 在原有代码上 修改 项⺫⽬目,或⼤大的 改版
⽇日常与项⺫⽬目同 时进⾏行 V1 13年5月30⽇日星期四
Page⺫⽬目录 KISSY的 包⺫⽬目录 ⻚页⾯面的版 本⺫⽬目录 锁⺫⽬目录下的 第⼀一层⽂文件是 ⼊入⼝口⽂文件 ⾮非根⺫⽬目录⽂文件是 锁内模块,只能被
当前锁内⽂文件引⽤用 13年5月30⽇日星期四
模块 13年5月30⽇日星期四
模块 • JS:KISSY 模块, ⾮非 KISSY 脚本 • 样式:CSS,Sass,Less •
HTML: Kissy Template, KISSY XTemplate 13年5月30⽇日星期四
模块与⻚页⾯面 utils page mods 13年5月30⽇日星期四
各种模块的关系 page utils 通⽤用 复杂 widget 13年5月30⽇日星期四
模块对⽐比 • page mod: ⼀一个⻚页⾯面独享的模块 ⽐比如:⻚页⾯面独享的业务逻辑 • utils mod: 多⻚页⾯面共⽤用,
基础性的, 只 能被间接使⽤用的,本⾝身不打包 ⽐比如: 埋点模块, 统⼀一的数据处理,通⽤用的业务逻辑, 基础样式库等 • widget: 复杂,独⽴立模块 可以被懒加载, 可实现单独的功能, ⽐比如投票箱,侧边栏等 13年5月30⽇日星期四
Utils ⺫⽬目录 13年5月30⽇日星期四
Widget ⺫⽬目录 每个widget 模块,放在单 独⽂文件夹下 ⼊入⼝口⽂文件 13年5月30⽇日星期四
Common ⺫⽬目录 13年5月30⽇日星期四
整体⺫⽬目录结构 13年5月30⽇日星期四
整体架构 13年5月30⽇日星期四
Kissy Pie 的架构 use Page Common Utils 13年5月30⽇日星期四
Kissy Cake 优化后 13年5月30⽇日星期四
Kissy Cake的架构 use Common Utils Widget Page 13年5月30⽇日星期四
四类核⼼心⺫⽬目录说明 说明 page common widget utils ⻚页⾯面层级的资源 应⽤用层级可直接引⽤用的通⽤用资源 应⽤用层级的组件 应⽤用层级的基础⼯工具模块
13年5月30⽇日星期四
与 KISSY Pie 的对⽐比 • 去掉了时间戳⺫⽬目录 • 根⺫⽬目录添加src 与 build
⺫⽬目录, 构建后的代码 全部在Build⺫⽬目录⾥里⾯面, 源码更干净 • 所有⻚页⾯面从根⺫⽬目录移⼊入 src/pages ⺫⽬目录,结构更 清晰 • 添加了Widget⺫⽬目录, 提供懒加载和负责模块 的⽀支持 • ⻚页⾯面版本 由 1.0 > 变 成 v1 13年5月30⽇日星期四
Tools Support 13年5月30⽇日星期四
Yeoman + Grunt ⽣生成 打包 13年5月30⽇日星期四
ABC UI 13年5月30⽇日星期四
ABC UI Grunt Yeoman 13年5月30⽇日星期四
Thanks & QA 13年5月30⽇日星期四