我想知道你们对这两个框架的看法,就以下方面而言:
我已经知道并使用 jQuery,我最近发现它缺乏大型 Web 应用程序的“企业就绪”组件。
现在我不想就 jquery 展开辩论,或者为什么没有 mootools,我想知道你们对这两个框架的具体看法。
谢谢!
最佳答案
免责声明:我是一名 Dojo 提交者。
不知何故,没有人在这个比较中展示道场的一面——这不是一个没有的比较,是吗?让我来谈谈你的观点。
稳健性
Dojo 被大型国际公司用于许多 IT 项目。我个人参与了 VMware、IBM、Cisco、Reuters Thomson 等的项目。我可以向您展示贡献者的实际列表,而不是将您转发到“营销文献”:http://docs.dojocampus.org/developer/contributors — 向下滚动以查看贡献(和使用)Dojo 的公司。
我们保留个人和企业贡献者的列表,以便我们的用户可以确保 Dojo 代码的 IP 沿袭是干净的——每个贡献者都签署了 CLA声明他/她/它编写了贡献的代码和/或有权在双重 AFL/BSD 许可下贡献它。到目前为止,我们没有遇到任何问题。
据我所知,YUI 主要由一家公司开发:雅虎! YUI started to accept external contributions only two years ago自 2005 年以来一直在开发中,现在也需要 CLA。
我不是股票市场专家,但雅虎总是有一些事情!:有一天它试图与谷歌结盟,第二天它杀死了它的搜索业务并与微软合作,甚至 selling the whole company to Microsoft was discussed back in 2008 ——谁能预测它明天会做什么。现在在2010年,the share price went down since 2008 ——它会再次发售吗? OTOH 有人说,如果微软决定保留 YUI,它会成为 YUI 更好的母亲。再说一次,微软有自己的软件属性,而不是开源 JavaScript 项目的支持者。
与 YUI Dojo 不同的是,它得到了几家公司的支持,其中 IBM 是最具影响力的公司——这家公司聘请了几位著名的提交者。虽然 Dojo 拥有强大的企业支持,但它仍然是一个由社区和个人驱动的项目。如果任何公司甚至几家公司遇到市场问题,我们仍将继续前行。
Dojo 是在双 AFL/BSD 许可下分发的,所有用途都免费。所有正式发布的 Dojo 版本都由 AOL 和 Google CDN 提供服务。
代码质量
我有偏见 :-) 并且我认为代码质量非常好。由于 Dojo 是一个开源项目,您可以随时自行判断并改进它,如果您愿意的话。
源代码保存在Subversion官方镜像维护在 Github (git) , 和 Bitbucket (hg) .为方便起见,Launchpad (bzr) 上有一面镜子.
核心开发人员继续推进新功能
Dojo 有一个活跃的充满活力的社区,可以说是插入轮子前进。作为核心开发人员之一,我个人向您保证,我们将继续向前推进,进一步插入众所周知的信封。
Dojo 拥有久经考验的创新记录,我们不会停止。
跨浏览器问题
当前 Dojo 1.4 supports following browsers :
即将推出的 Dojo 1.5(将在几天内发布)已使用以下浏览器进行了广泛测试:
突出显示与 YUI 的 A 级浏览器的差异:
我个人可以补充一点,我仍然在 Firefox 2 上测试 dojox.gfx(跨平台图形包)——它涉及 Dojo Core 并且按预期工作。我在几个奇特的浏览器上测试了 Dojo Core,比如 Midori .
另一个区别是 Dojo 可以在桌面和服务器环境中使用(并且被使用)。显然,这些环境不使用特定于浏览器的组件。
模块组件
从第一天开始,Dojo 就提供了类、模块和包(模块的集合)。 Dijit 提供小部件:打包的 HTML + JavaScript,具有统一的界面。
所有构建块都向用户公开,因此他们可以创建自己的组件,这将是一等公民:它们可以像任何其他模块一样加载,由构建器处理(依赖项跟踪、缩小、CSS 预处理等),用户甚至可以完成异国情调的 CDN 构建。您可以使用库存 Dojo 组件做的任何事情,您都可以使用自己的组件做。
Dojo 本身分为 3 个子项目,可以单独使用:
最容易学习和整合
Dojo 只是 JavaScript 和常规 HTML/DOM(用于小部件)。它不假装是别的东西,它不是一个由 fuhrer 掌 Helm 的邪教,它不是一个“框架”,它控制你的应用程序并强制你做一些奇怪的事情,Dojo 不想“改进”“不完美”的 JavaScript,Dojo 不想将浏览器伪装成其他东西。相反,Dojo 提供了实用的工具来提高程序员的工作效率、促进 RAD、解决常见问题以及支持有用的技术和方法。
每个有经验的程序员通常都有一个迷你库,这些东西在以前的项目中对他/她来说效果很好。他或她知道应该避免什么和使用什么。当我意识到 Dojo 是这个类固醇的库时,它在我的脑海中“咔哒”了一下——就像几位专家聚在一起并仔细组合他们的个人库一样。当然,它有很多不同的模块,但我只能在我的特定项目中使用我想要的东西——我没有被迫使用所有东西,我也不会为我不使用的东西付费。甚至不是抽象惩罚。
如果您了解 JavaScript 并熟悉 HTML、CSS 和 DOM,那么您就会感到宾至如归。
关于javascript - Dojo 与 YUI javascript 框架,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3214844/