一场关于YUI3/jQuery的精彩辩论
作者:拔赤 来源:taobaoued 发布时间:2010-11-11 12:50:00
译者按:我们时常能看到不同JavaScript库/框架之间的各种比较,但这次 YUI3 架构师和 jQuery 之父的直接对话却非常难得,也是暗涌澎湃精彩至极,实在忍不住,翻译出来以飨各位读者,希望对那些有志于开发“库/框架”的同仁们有所启迪。
jQuery之父回答“YUI3如何提升其影响力?”
原文:http://www.quora.com/How-could-YUI3-improve-its-image-compared-to-jQuery-MooTools-etc/
题目:和jQuery和Mootools相比,YUI3如何提升其影响力?
作者:John Resin(jQuery之父)
译者:拔赤
YUI3 已经超越 YUI2,并向jQuery 看齐了,那么 YUI3 如何提升其影响力呢?关于这个问题,有些回答似乎有些跑题,问题是“怎样提升 YUI 的影响力”(不错的问题),然而大部分的回答却在攻击 jQuery。
我从两方面来回答这个问题:
YUI 应当如何改进,以便更多的人来使用
YUI 如何提升才能改善和 jQuery 的竞争力。
我不得不承认,和其他 JS 库相比,YUI 的确很赞,不管是代码级的工作、大量优秀的文档、demos、blog 文章、视频教程等等,真的相当出色。而其他的 JS 库则对这些方面不太用心,而且我认为这些内容是一个成功开源项目最重要的组成部分,然而 YUI 却没有更成功的占领市场,对此我一直很不解。
在这里,为了便于各位理解,我暂作几个假设:
目前的 YUI3 版本已经“足够优秀”
YUI 文档和论坛也已经足够完善,足以吸引更多的用户来使用 YUI3。
基于此,我做一些简短的评价:
分散的域名应该合并成一个,正像别人指出的那样,维护太多站点往往会适得其反、吃力不讨好。
多代码库应当合并成一个代码库,不错,人们仍在使用 YUI2,YUI3 的 API 和 YUI2 却有着天壤之别,而 YUI 将来只会在 YUI3 上取得成功(YUI 团队固执的维护着 YUI2 不会帮助 YUI “更成功”的)
YUI 的引入方式太多,应当缩减至一种。人们应当从 YUI().use 开始接触 YUI(假设这些人真想深入使用 YUI)。首页只保留一个要点即可:应当这样来引入 YUI,<script src=”http://yuilibrary.com/yui-min.js”></script>,这样就清晰了很多。
简单讲,YUI 项目应当保留一个整体的方向性,重点太分散,则会事与愿违。
如今,如果 YUI 直接和 jQuery 进行竞争,YUI 和它的子项目的运作方式都需要做出调整。因为现在的 YUI 项目运作方式与 YAHOO 的工作方法是背道而驰的。鉴于目前的管理方式的极差的操作性,YUI 项目着实是一个不幸的牺牲品。
本来,我们应该使用 SimpleYUI 来启动我们的 YUI 程序。看看 jQuery 吧,它的 API 简洁实用,人们多冲着这些迷人的功能来构建大多数的站点。因此当我们访问 yuilibrary.com 的时候,本应期待只有一种方法来使用 YUI,就是 simpleYUI(这个名字应当换换,换一个更简洁自然的叫法)。


猜你喜欢
- spring boot 不连接数据库启动用spring boot 搭建的项目,在配置文件不连接数据库启动项目会报错。原因在于spring b
- Python文件: #parsexml.py #本例子参考自python联机文档,做了适当改动和添加 import xml.parsers.
- MySQL/MariaDB/Percona数据库升级脚本MySQL/MariaDB/Percona数据库升级脚本截取《OneinStack》
- 今天来给大家推荐一个Python当中超级好用的内置函数,那便是lambda方法,本篇教程大致和大家分享什么是lambda函数lambda函数
- D:document 文档 浏览器加载的页面 DOM O:object 对象 页面及页面中的任何元素都是对象 M:module 模型 页面中
- 从string-db下载蛋白质相互作用的信息,在处理时发现蛋白A与B互作被记录了两次比如下边的例子(即AB、BA)df.drop_dupli
- ASCII(str) 返回字符串str的第一个字符的ASCII值(str是空串时返回0)mysql> select ASCII(
- 一、实例代码HTML:<!DOCTYPE html><html lang="en"><he
- QQWry.dat数据可以去百度搜索最新版本<%'======================================
- 微信小程序实现图片轮播及文件上传刚刚接触微信小程序,看着网上的资源写了个小例子,本地图片轮播以及图片上传。图片轮播:index.
- 在JavaScript中我们需要用到trim的地方很多,但是JavaScript又没有独立的trim函数或者方法可以使用,所以我们需要自己写
- 一、概念官方描述:当打包构建应用时,Javascript包会变得非常大,影响页面加载。如果我们能把不同路由对应的组件分割成功不同的代码块,然
- 一、多行函数又称组合函数(Group Functions)、聚合函数 1、 Types of Group Functions avg、cou
- UDPUDP是面向无连接的通讯协议,UDP数据包括目的端口号和源端口号信息,由于通讯不需要连接,所以可以实现广播发送。 UDP传输数据时有大
- 环境搭建1、下载所需的软件包:(1)python安装包(2)django安装包以下2个包其实是安装python包管理工具,在后面安装djan
- 摘要:NumPy中包含大量的函数,这些函数的设计初衷是能更方便地使用,掌握解这些函数,可以提升自己的工作效率。这些函数包括数组元素的选取和多
- 升序import pandas as pdimport numpy as npdata = np.random.randint(low=2,
- 这篇文章主要介绍了postman和python mock测试过程图解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习
- 关于distributedsampler函数的使用1.如何使用这个分布式采样器在使用distributedsampler函数时,观察loss
- 这篇文章主要介绍了Python autoescape标签用法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值