发帖    主题    评论    推荐    标签    作者    订阅    查搜    注册   登陆   关注
 
面向对象 设计模式 领域驱动设计 云架构 框架 开发教程 SOA 大数据 扩展性 并发编程 EDA 分布式 函数编程

Prototype与JQuery对比

                   
2009-08-12 14:09
赞助商链接

从时间上看,Prototype.js比Jquery早,国内占主流的是Jquery,个人认为可能是与国内AJAX比国外要落后一点,当然选择比较后出来、比较新的Jquery。

我个人是先从prototype.js入手,包括JiveJdon3.6版本都是基于它的,Jquery也一直关注,发现两者语法比较接近,prototype.js更接近Javascript风格,而Jquery设计上要简洁。

国外2007年有一篇文章对jQuery和Prototype做了比较:
Why I moved from Prototype to jQuery:
http://www.quarkruby.com/2007/11/6/why-i-moved-from-prototype-to-jquery

我认为JQuery主要优点是:Jquery是Behavior driven development (BDD)行为驱动开发。使用JQuery可以将html元素的行为从html中分离出来,实现所谓MVC J的模式,View是html,而J是Jquery.

至于文中提到的其他Jquery优点,prototype.js也有,比如Chain:
Jquery:
$("div.message").show()
.append("<p>Action has been executed successfully")
.addClass("flash");

prototype:
$$('input.date')
.invoke('observe', 'focus', onFocus)
.invoke('observe', 'blur', onBlur)

chain用法虽然简单,但不容易懂。

在下面这篇文章中,作者指出如何更加精炼简单地使用Prototype:
http://thinkweb2.com/projects/prototype-checklist/
比如常见的AJAX语法:
不带参数:new Ajax.Request('blah.php')
带参数:new Ajax.Request('ninja.php', {
parameters: {
weapon1: 'foo',
weapon2: 'bar'
}
})

获得某个字段的值:var woot = $F('bar')
修改某个字段的值:$('coolestWidgetEver').update('some nifty content')
设置CSS:
$('footer').setStyle({
height: '100px',
background: '#ffc'
})


最著名的争论是2007年的Prototype and jQuery: A code comparison
http://ajaxian.com/archives/prototype-and-jquery-a-code-comparison
使用PPT将两者做比较,讨论者无数。

不过,Prototype 有一个著名的windows效果简称PWC(Prototype Window Class):
http://prototype-window.xilinus.com/
至今没有在Jquery中发现类似替代,特别是这个页面的效果:http://prototype-window.xilinus.com/PWC-OS/index.html
号称可以替代PWC的JqModel:
http://dev.iceburg.net/jquery/jqModal/#examples
窗口效果比PWC要差多,PWC简直可以媲美Windows桌面效果,本论坛就是用的PWC效果。

有人说:基于Prototype更适合做一些应用框架库;而Jquery则是直接面向应用的,比较赞同。

[该贴被banq于2009-08-12 14:44修改过]

1
2009-08-13 18:15

jQuery vs MooTools
jQuery与MooTools对比

http://jqueryvsmootools.com/

跨jQuery, Mootools, YUI and Prototype的框架carousels
http://webtoolkit4.me/2009/08/14/riding-carousels-with-jquery-mootools-yui-and-prototype/
[该贴被banq于2009-08-14 16:49修改过]

2009-08-30 08:23

Dojo vs. Ext.

不选择JQuery, Prototype and Scriptaculous因为他们有各自的特长用处。
从下面几个方面进行比较
1.Confirmation Dialog
2.JSON parsing and handling
3. The Learning Curve学习门槛
4.Playing well with others
5.成熟度
6.Licenses

结果 Dojo 获胜

prototype.js      jquery      javascript      ria富客户端     

赞助商链接

赞助商链接

返回顶部

移动版 关于本站 使用帮助 联系管理员 最佳分辨率1366x768
OpenSource JIVEJDON Powered by JdonFramework Code © 2002-20 jdon.com