大师之间的论战 jQuery之父谈YUI3差在哪

日期: 2010-11-08 来源:TechTarget中国 英文

  近日,有人在Quora提了一个问题:“YUI3 如何提升其影响力?”,这个问题引起社区的热议。而本次讨论的最大亮点在于jQuery之父John Resig和YUI3架构师Nicholas C. Zakas也参与讨论之中,同时Nicholas C. Zakas对John Resig的某些观点进行了反驳。两位大佬直接对话实属难得,辩论暗涌澎湃精彩至极。现将两位大佬的辩论内容分享于此,希望对有志于开发“库/框架”的同仁们有所启迪。

  如何提升YUI的影响力,John Resig通过回答下面两个的问题,表达了自己的观点:

  1. YUI应当如何改进,以便更多的人来使用?

  2. YUI如何提升才能改善和jQuery的竞争力?

  在回答第一个问题时,他表示:

  和其他JS库相比,YUI的确很赞,但由于它的域名分散、代码库过多且引入方式太多,这就导致了YUI无法更多的去占领市场。
 
  在假设目前的YUI3版本已经“足够优秀”,YUI文档和论坛也已经足够完善,足以吸引更多的用户来使用YUI3的情况下,他提议把分散的域名合并成一个;把多代码库合并成一个代码库;把YUI 的引入方式缩减至一种。简单讲,YUI项目应当保留一个整体的方向性,重点太分散,则会事与愿违。

  YUI3架构师Nicholas C. Zakas对John Resig的观点表示十分赞同,他说:

  我承认,分散的站点的确是YUI的一个问题,不止一个人曾经纠结于到底应该访问YDN呢还是访问YUILibrary.com?这是YUI首先要解决的问题。同样,John对于简化YUI文档首页上的引导信息的建议也相当不错,是个好主意。

  关于YUI该如何提升才能改善和jQuery的竞争力,John Resig则称首先YUI项目本身依然存在着诸多结构性问题,需要改善。他表示:

  如今,如果YUI直接和jQuery进行竞争,YUI和它的子项目的运作方式都需要做出调整。因为现在的 YUI 项目运作方式与YAHOO的工作方法是背道而驰的。鉴于目前的管理方式的极差的操作性,YUI项目着实是一个不幸的牺牲品。

  他还特别希望YUI官方网站能够重构,让人们更快的找到他们想要的组件,包括那些社区提供的组件。重新定制首页,让访问者一眼就能看到SimpleYUI,再从YUI组件库中挑选一些很酷的组件放在首页下方,并直接引导用户能进入到YUI Gallery。

  Nicholas C. Zakas对此观点不是很同意,他说:

  “我不认为YUI和jQuery之间存在你死我活的竞争关系”。

  他表示不想将YUI搞成另外一个jQuery。这两个库各自都有优点,且重合度极小。jQuery更适合小网站使用,毕竟它很简单、大众、人人都可以快速上手,因此jQuery有着庞大的设计师群体。但他不愿意拿jQuery来搭建Yahoo首页。因为对于可扩展的Web应用,YUI的确更胜一筹。他认为仅凭一个单一的产品很难满足所有用户多样化的需求。jQuery在其专注的方面的确富有想象力,他宁愿将YUI的关注点放在解决复杂Web应用方面的问题上。

  John Resig表示YUI要提升与jQuery的竞争力,还要建立开源的社区制度。他说:

  开源社区是YUI可持续发展的关键所在,它会带来更多的反馈和热情的开发者,YUI的影响力也在开源社区中潜移默化的影响这其中的每个人,Yahoo不应是其唯一的维护者,维护者应当来自于更广阔的开源社区。
 
  YUI项目有强大的YAHOO全职全薪的开发团队进行独立开发,YUI的命运掌控在YAHOO手中。至今还没有非雅虎的YUI社区,很多非雅虎的开发者为YUI贡献了很多不错的代码,但他们都没有提交权限,他表示这是一个严重的问题。反观jQuery的成功,在很大程度上得益于开发者的反馈和帮助,jQuery从社区中得到了大量的滋养。鉴于YUI自身独立、开源的特性,他提议YUI应当从YAHOO剥离出来,建立一个持有YUI 100%版权的非营利组织,并让非官方的开发者来负责项目的运作,这对 YUI 的发展和提升其在社区的活力有着非同一般的意义。

  Nicholas C. Zakas对此观点十分反对,他表示:

  正是得益于雅虎的庇佑,YUI才如此价值连城。
 
  他说将YUI从Yahoo剥离出来,才真正剥夺了它的战略优势。当YUI专注于这些高端项目和某些私有项目的时候,就没办法同时顾及到那些开源社区了。同时他更不赞同“Yahoo不应当“操纵” YUI的命运”的说法。他认为是Yahoo让YUI闪光的。任何一个开源项目都有一个核心的开发团队,他们的工作除了维护项目源码之外,还负责培养开发者、并为他们提供学习路线图。雅虎为YUI的开发者们支付薪水,这并不能改变项目的本质。

  至于YUI是否可以改进社区的形式和贡献代码的模式?Nicholas C. Zakas表示当然可以,而且不必与Yahoo切断联系。他称YUI3是一个高质量的产品,在不断壮大的开源社区中有着强劲的生命力,如果硬要指责YUI 团队的不称职的话,也只是他们忽视了市场营销的重要性,和缺乏行之有效的推广手段,而这两方面正是jQuery的强项,这也是YUI需要向jQuery学习的地方。

  淘宝前端工程师王保平对于上面Nicholas C. Zakas和John Resig之间的争吵,有一些自己的感想:

  我的感觉,NCZ并没有很好的领悟到 John Resig 的建议。

  Resig的建议里,只有一个关键点:Simplicity is key。并且很想传递出一个理念:Simplicity is far harder to get right than building complex applications。“简单比复杂更具挑战”,可惜Resig并没有有效传递出来。

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

相关推荐

  • 十款最新的JavaScript开发工具

    JavaScript自推出后就大受开发者的青睐,基于JavaScript的开发工具不计其数,开发者们可以灵活选择,轻松构建应用,本文分享了十款最新的JavaScript开发工具。

  • Twitter.com在用哪些JavaScript框架?

    我一直在研究twitter.com使用的一些UI框架。下面是这些框架的清单(大部分是Javascript框架)。如果你发现有些框架Twitter已经没在使用了,请随时告诉我!

  • 25个可遇不可求的jQuery插件

    随着jQuery插件在网站建设过程中的使用率不断的增加,所以有必要跟进时代步伐开发出一些新的插件/代码片段,以此来巩固并提高前端用户体验,将用户体验提升到一个新的高度。

  • 八个超实用的jQuery技巧攻略

    jQuery是JavaScript最好的库之一,主要用于制作动画、事件处理,支持Ajax及HTML脚本客户端。文中分享了8个超实用的jQuery代码技巧攻略,希望你会喜欢。