近日,有人在Quora上提了一个问题:“YUI3如何提升其影响力?”,这个问题引起社区的热议。而本次讨论的最大亮点在于jQuery之父John Resig和YUI3架构师Nicholas C. Zakas也参与讨论之中,同时Nicholas C. Zakas对John Resig的某些观点进行了反驳。

两位大佬直接对话实属难得,辩论暗涌澎湃精彩至极,希望对有志于开发“库/框架”的同仁们有所启迪。

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

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

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

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

和其他JavaScript库相比,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项目着实是一个不幸的牺牲品。

John Resig本人还特别希望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。并且很想传递出一个理念:简单比复杂更具挑战,可惜Resig并没有有效传递出来。”

本文原作者sdf3004,原文链接http://developer.51cto.com/art/201011/232939.htm

标签: YUI3 jQuery之父

转载:大师之间的论战 jQuery之父谈YUI3差在哪相关推荐

  1. 对话jQuery之父John Resig:JavaScript的开发之路

    在参加完CSDN组织的TUP对话大师系列演讲活动后,27岁的jQuery之父John Resig接受了本刊总编刘江的深度访谈,这篇对话文章,让我们一窥这位著名程序员的人生及技术感悟. 编程初体验 &l ...

  2. jQuery之父:JavaScript的开发之路

    在参加完TUP对话大师系列演讲活动后,27岁的jQuery之父John Resig接受了记者的深度访谈,这篇对话文章,让我们一窥这位著名程序员的人生及技术感悟. 编程初体验 记者:你是如何开始编程的? ...

  3. JQuery之父John Resig带你了解无处不在的JavaScript

    本文摘自人民邮电出版社JavaScript忍者秘籍(第2版)书 本文包括以下内容: JavaScript核心语言特性 JavaScript引擎核心要素 JavaScript开发中的3个最佳实践 我们先 ...

  4. Jquery 寻找父、子、兄弟节点

    JQUERY的父,子,兄弟节点查找方法 jQuery.parent(expr)  找父亲节点,可以传入expr进行过滤,比如$("span").parent()或者$(" ...

  5. jQuery之父强烈推荐之jQuery实战

    jQuery之父强烈推荐 点击查看 媒体评论: "本书令我惊喜--这是一部深入透彻的著作,jQuery项目本身都从中获益匪浅.相信它将成为你学习和使用jQuery的理想资源.". ...

  6. jQuery 之父:每天写代码

    去年秋天我的支线代码项目 遇到了一些问题,项目进展不足,而且我没法找到一个完成更多代码的方法(在不影响我在Khan Academy方面的工作的前提下). 我主要在周末进行我的支线,当然有时候也在晚上进 ...

  7. jquery查找父窗体id_js/jquery如何获取父窗口的元素?

    展开全部 取父窗32313133353236313431303231363533e58685e5aeb931333365643565口的元素方法: $(selector, window.parent. ...

  8. js和jquery获取父级元素、子级元素、兄弟元素的方法{转}

    先说一下JS的获取方法,其要比JQUERY的方法麻烦很多,后面以JQUERY的方法作对比 JS的方法会比JQUERY麻烦很多,主要则是因为FF浏览器,FF浏览器会把你的换行也当成DOM元素 原生的JS ...

  9. jquery 滚动到某个div_如何使用jQuery获取父元素

    jQuery获取父元素我们有三种方式可以实现,.parent()..parents()..closest(),下面我们将介绍jQuery获取父元素的这三种方式以及一个具体的示例. web前端学习:打造 ...

  10. js和jquery获取父级元素、子级元素、兄弟元素的方法

    先说一下JS的获取方法,其要比JQUERY的方法麻烦很多,后面以JQUERY的方法作对比 JS的方法会比JQUERY麻烦很多,主要则是因为FF浏览器,FF浏览器会把你的换行也当最DOM元素 原生的JS ...

最新文章

  1. NoticeView
  2. 【毕业论文写作】宗老师《如何撰写毕业论文?》27页ppt
  3. mysql之DML(SELECT DELETE INSERT UPDATE)
  4. linux下的Tomact是什么
  5. 欧拉回路【洛谷习题】无序字母对
  6. 小学五年级就已经开始编程啦吗???
  7. 【AI视野·今日CV 计算机视觉论文速览 第152期】Fri, 9 Aug 2019
  8. Flutter通过MethodChannel实现Flutter 与Android iOS 的双向通信
  9. 炫天塔罗占卜结果......
  10. python解题软件哪个好用_几个好用的Python数据分析工具
  11. python羊车门_羊车门 python 作业
  12. double 乘法_老大说:谁要再用double定义商品金额,就自己收拾东西走 | 文末福利...
  13. Nginx——配置文件
  14. JS关于辅助函数inherit()的小问题
  15. DOS命令与批处理学习历程
  16. Tensorflow2.0学习-加载和预处理数据 (七)
  17. [网站设计] 素材网罗
  18. php 心愿墙系统源码,php开发|源码|微信留言板|微信表白墙|吐槽墙|心愿墙|2017V2.1版...
  19. 建立统分结合、职责明确的疾控可持续发展信息化体系
  20. Python:读写txt、xlsx、mat、csv、yaml、npy、npz文件

热门文章

  1. 手机如何连接远程桌面?
  2. 高通WLAN驱动分析
  3. js之数组打印看到长度和实际长度不同(浅拷贝)
  4. matlab imhist与histeq函数
  5. 用html做一个图表,04做一个简单的图表.html
  6. graphpad多条不同的曲线_GraphPad绘制几种常见散点图教程
  7. snmp trap 如何在浏览器中_SNMP TRAP功能
  8. FFmpeg转码音视频不同步情况总结
  9. 用AD画PCB流程介绍
  10. coreldraw sp2精简版 x4_coreldraw x4 sp2 精简版