• 争论:Prototype 与 jQuery


    由于Ajax已经统治了Web开发中的客户端,人们不禁要问“哪个JavaScript/Ajax框架才是最好的”。最近Glenn Vanderburg撰写了一篇PrototypejQuery比较的文章,这引发了业界专家Douglas Crockford和Dion Almaer的不同回应

    Glenn Vanderburg首先谈到其专业的JavaScript经验并解释到他缘何有机会使用这两个框架

    就像大多数从事Rails开发的程序员一样,我也非常熟悉Prototype库。甚至在其集成到Rails之前,它就是我的首选。在开始使用Prototype之前,我就已经 非常 精通 JavaScript了,同时我也欣喜的看到Prototype库弥补了JavaScript语言中的很多缺陷。此外,我已经使用Ruby开发好几年了,Prototype的哲学非常自然,显然它从Ruby中获得了不少灵感。

    但我了解到有越来越多的人在为jQuery唱颂歌。我大略的看过jQuery,它给我留下了深刻的印象,然而却没有找到充分的理由让我转投jQuery。但jQuery的狂热者中竟然有我很尊重的人,包括(过去几个月中)在Relevance的 同事

    现在我正从事着两个不同的项目,他们都使用了jQuery。我与一些经验丰富的jQuery使用者一起工作,这的确增强了我对jQuery的理解和认识程 度。工作中有很多JavaScript相关的事情需要处理,有简单的,也有复杂的,因此我有机会感受使用jQuery的幸福,同时也看到了其发展方式。

    他继续详尽的论述了Prototype的优缺点:

    我认为Prototype还是优于jQuery,这一点并没有改变。当然jQuery还可以继续改进,其设计还有突破的可能(对 于这个方面,我认为jQuery所缺失的一些特性都可以插件的形式补充进来)。但遗憾的是,如果不破坏兼容性就无法修复jQuery API的一些缺陷,而这一点在下一个版本中依然还是个未知数。

    但至少Prototype还可以独善其身。无论对于我还是对于其他使用者来说,Prototype依然是JavaScript库的首选。

    Glenn Vanderburg的论调遭到了Douglas Crockford(Yahoo高级JavaScript架构师,JSON之父)的反对,Douglas Crockford对jQuery偏爱有加

    尽管一些评论家认为存在一小撮对jQuery无知的人是正常的,但我认为Glenn的论调并不可信。作为一个后起之 秀,jQuery从Prototype中汲取了很多内容,为我们带来了一个很棒的表达式语言模型。但错误还是出现了,jQuery的突然流行使得这些错误 的修复不太可行了。显然jQuery社区采取了包容的态度,而Glenn却没有。John Resig是个聪明的家伙,我能想象到当他无法修复这些问题时是多么的沮丧啊。也许他现在知道Brendan的感受了。

    来自Mozilla的Dion Almaer对此却不敢苟同,他认为jQuery更适合自己的口味

    暂且放下其他事情不谈(如团队技巧,项目情况等等),我认为:
    • 如果要构建动态的Web站点,用jQuery没错。简单、优雅、漂亮。如果我是一个设计者,我也会使用它的。
    • Dojo对于大型、需要编写大量JavaScript的应用来说是上佳之选。你需要的任何东西Dojo都有。但这并不是说小型应用就不能使用Dojo了。其新的核心足够小、足够快、足够好。

    我认为对于这两种情况来说Prototype都适合。它既适合小型应用(无需学习大量的库),也适合大型项目,这样我自己就无需编写大量代码了。

    当然了,Dion指出这场争论并没有考虑到其他优秀的框架、库和工具集,如DojoYUIGWTMooToolsExt JSSproutCore等等。

    你认为哪个才是最好的Ajax框架呢?

    查看英文原文:Debate: Prototype vs. jQuery

    转自:http://www.infoq.com/cn/news/2009/01/prototype-vs-jquery



  • 相关阅读:
    结对编程1-基于GUI的四则运算生成器
    个人作业1——四则运算题目生成程序(基于控制台)
    软件工程的实践项目课程的自我目标
    个人作业3——个人总结(Alpha阶段)
    结对编程2——单元测试
    个人作业(2)---英语学习APP案例分析
    结对作业1----基于GUI的四则运算生成器
    个人作业1——四则运算题目生成程序(基于控制台)
    个人作业3——个人总结(Alpha阶段)
    结对编程2——单元测试
  • 原文地址:https://www.cnblogs.com/catprayer/p/1944850.html
Copyright © 2020-2023  润新知