5. KISSY
5
Why create components
• Ease of development
docs.kissyui.com | kissyteam@gmail.com
6. KISSY
6
Why create components
• Ease of development
• Reusability
docs.kissyui.com | kissyteam@gmail.com
7. KISSY
7
Why create components
• Ease of development
• Reusability
•Maintainability
docs.kissyui.com | kissyteam@gmail.com
8. KISSY
8
Why API Design
• Contract between user and developer
docs.kissyui.com | kissyteam@gmail.com
9. KISSY
9
Why API Design
• Contract between user and developer
• Stable platform to build on
docs.kissyui.com | kissyteam@gmail.com
10. KISSY
1
0
Why API Design
• Contract between user and developer
• Stable platform to build on
• Minimize waste
• Code-reuse instead of re-writing
• Reduce code and complexity
docs.kissyui.com | kissyteam@gmail.com
27. KISSY
2
7
Creation
• new
var m = new Menu();
m.addChild(new Menu.Item());
m.on("click",function(){})
m.render();
docs.kissyui.com | kissyteam@gmail.com
30. KISSY
3
0
API Design Principle
• Hide implementation
new Overlay({
// view: new OverlayRender()
});
docs.kissyui.com | kissyteam@gmail.com
31. KISSY
3
1
API Design Principle
• Easy to learn
• consistency
• simple
• elCls/el/srcNode/get()/set()
docs.kissyui.com | kissyteam@gmail.com
32. KISSY
3
2
API Design Principle
• Easy to read and write
new Overlay({
width:,
height:'',
children:[{
xclass:'menu'
}]});
docs.kissyui.com | kissyteam@gmail.com
33. KISSY
3
3
API Design Principle
• Easy to extend
var MyOverlay = Overlay.extend(…);
docs.kissyui.com | kissyteam@gmail.com
34. KISSY
3
4
API Design Principle
• make api complete
• separate concern
• new/addChild/removeChild/destroy/on/detach
docs.kissyui.com | kissyteam@gmail.com