25
YUI & jQuery: To Build Large Scale JavaScript App Morgan Cheng @morgancheng

YUI vs jQuery: to Build Large Scale JavaScript App

  • Upload
    mocheng

  • View
    9.468

  • Download
    0

Embed Size (px)

Citation preview

Page 1: YUI vs jQuery: to Build Large Scale JavaScript App

YUI & jQuery: To Build Large Scale JavaScript App

Morgan Cheng@morgancheng

Page 2: YUI vs jQuery: to Build Large Scale JavaScript App

It is Not Religious War

http://www.quora.com/How-could-YUI3-improve-its-image-compared-to-jQuery-MooTools-etc/

http://www.nczonline.net/blog/2010/11/03/response-to-john-resigs-comments-about-yui/

Page 3: YUI vs jQuery: to Build Large Scale JavaScript App

Single Metric is not Enough

Page 4: YUI vs jQuery: to Build Large Scale JavaScript App

Rosetta is not enough

http://www.jsrosettastone.com/

Page 5: YUI vs jQuery: to Build Large Scale JavaScript App

jQuery YUI

Page 6: YUI vs jQuery: to Build Large Scale JavaScript App

Demo

• http://jsfiddle.net/morgancheng/afX5b/

• http://jsfiddle.net/morgancheng/HmsxA/

• http://jsfiddle.net/morgancheng/9qgAP/

• http://jsfiddle.net/morgancheng/BeV2q/

Page 7: YUI vs jQuery: to Build Large Scale JavaScript App

jQuery doesn’t Scale

Page 8: YUI vs jQuery: to Build Large Scale JavaScript App

Scale!

Page 9: YUI vs jQuery: to Build Large Scale JavaScript App

What is required to be Scalable?

Page 10: YUI vs jQuery: to Build Large Scale JavaScript App

DOM, AJAX Utility

Module Management

Application Lifecycle

Page 11: YUI vs jQuery: to Build Large Scale JavaScript App

DOM, AJAX Utility

Module Management

Application Lifecycle

Page 12: YUI vs jQuery: to Build Large Scale JavaScript App

Module Management

Page 13: YUI vs jQuery: to Build Large Scale JavaScript App

“The secret to building large apps is never build large apps. Break you applications into small pieces. Then, assemble those testable, bite-sized pieces into your big application”

— Justin Meyer, author JavaScriptMVC

Page 14: YUI vs jQuery: to Build Large Scale JavaScript App

• Independent

• Reusable

• Agnostic to others

Page 15: YUI vs jQuery: to Build Large Scale JavaScript App

Event System

I know something happens. But I don’t

care how others handle it

I want to do something when this happens. But I don’t care who trigger it.

Page 16: YUI vs jQuery: to Build Large Scale JavaScript App

AMD: Asynchronous Module Definition

define(‘module-name’, [‘dependency1’, ‘dependency2’], function(d1, d2) {

// export something }

);

Page 17: YUI vs jQuery: to Build Large Scale JavaScript App

YUI Module Management

YUI.add(‘module-name’, function(Y) {// Change Y to change the worldY.foo = …;

},‘version’,{

requires : [‘dependency1’, ‘dependency2’

]});

Page 18: YUI vs jQuery: to Build Large Scale JavaScript App

Concatenate Modules

Page 19: YUI vs jQuery: to Build Large Scale JavaScript App

Application Lifecycle

Page 20: YUI vs jQuery: to Build Large Scale JavaScript App

• Bookmark-able

• Navigable

• SEO Friendly

Page 21: YUI vs jQuery: to Build Large Scale JavaScript App

https://github.com/addyosmani/todomvc

So Many Choices

Page 22: YUI vs jQuery: to Build Large Scale JavaScript App

MVC is not the only game in town

Page 23: YUI vs jQuery: to Build Large Scale JavaScript App

App Framework

Page 24: YUI vs jQuery: to Build Large Scale JavaScript App

Choose Gear According to YOUR Needs

Page 25: YUI vs jQuery: to Build Large Scale JavaScript App

Thank YouAny Questions?