jQuery vs ExtJS [关闭]


77

我们正在计划开发全新的GUI。我们对旧产品中使用的JQuery感到非常满意。这是简单,优雅和快速的。

我们已经听说过ExtJS。它还具有AJAX和大量其他功能。

我们只想使用其中之一。

根据您的经验,哪个最合适?

Answers:


88

我已经广泛使用jQuery并且喜欢它。我已经多次回顾过ExtJS,并希望有机会在某个时候使用该库。这是我的看法。

jQuery的

JavaScript编程的垃圾箱。如果您愿意挖掘,使用一些胶带和超级胶水,它们就可以满足您的所有需求,并且总的来说,有一些开发人员有能力并愿意敲打代码。jQuery很棒!

它的使用方式超出了您的想象。但是,像Drupal和其他社区支持的框架/库一样,当您获得免费支持时,您会得到所要支付的费用。您可以使用jQuery完成所有操作,但有时您需要铲子,手电筒和毅力。

此外,还有非常好的文档(与PHP的在线文档相当)以及大量示例代码和博客条目。

将吸引那些对Google不太害羞的修补匠和“高级脚本编写者”,寻找一个可以用来解决问题并加速开发的示例。

ExtJS

由一家营利性公司专业开发,这些控件(类似于Visual Studios)比控件或插件更类似于控件。ExtJS有意地完整和强大,并注重细节和更高层次的组织结构,这比我想像的jQuery更为广泛,ExtJS是您所支付的:获得专业支持和开发的产品,凭借其强大的生命力和生命力返回价值。

将吸引经过专业培训的“程序员”,他们期望进行广泛的测试,并在控件的开发中具有更高级或更严格的要求。

最终建议

确实与您的商店和客户有关。如果您的团队更喜欢DIY,并且喜欢将所有东西粘在一起并将其发布,请使用jQuery。在任何情况下都非常强大。如果您有一家非常有秩序的专业商店,ExtJS可能是一个不错的选择,但是jQuery也将是可行的。我不认为需要拆分知识库并同时使用它们,但是实际上,如果您这样做,请对面向客户端的部分使用ExtJS,对管理控制台使用jQuery。我没有看到相反的好处。

另外,对于您的管理控制台,请查看TIBCO。可能过度杀伤,但非常有趣。


6
尼斯写了两个..有趣的是我来到了相反的结论重新:客户端VS管理员:)

1
我想这个决定与客户端看到的内容以及管理控制台的任务有关(调整用户帐户与SCADA)。我的想法是,客户应该看到钱,管理控制台应该是必需的,但这并不是万难的。老实说,除非有遗留问题,否则我很难支持代码拆分。为什么要重写jQuery中已有的代码?除非ExtJS为您提供了可预测的实用交付时间和/或客户支持指标,否则这听起来像是在浪费时间。
贾里德·法里什

顺便说一句,如果您对此感兴趣,TIBCO通用接口是最好的入口点。developer.tibco.com/gi/default.jsp
Jared Farrish

7
如果您打算使用ext,则只需一些其他说明。从Ext 4开始,在性能方面有很多需要考虑的地方。渲染和实际有效负载。并不是真的不会忘记。对于需要响应的外部网站,我实际上不建议在jQuery上进行扩展。对于内部工具和其他公司类型的应用程序,ext很好。
阿斯科

1
@asken ... Xero在整个Web界面上使用ExtJS,它的响应速度非常快。
Dawesi

23

Jared Farrish的答案已经很广泛了。

我在不同的项目上都使用过。

ExtJS的大小和它允许您执行的操作都重得多。如果您需要复杂的Web应用程序界面,它对Windows,表格等都有很好的控件,并且看起来很时尚,那将是一个很好的选择。

ext论坛社区通过他们的论坛非常有帮助。

也就是说,它比jQuery更加“严格”,并且开始学习的时间明显更长,但是如果您正在研究复杂的UI,那么它将大有作为。

因此,jQuery的好处是它可以使您的项目更快地移动,并且在实现新功能时更容易进行“实验”。

它们都适合于自己的应用程序类型。我实际上已经在一个项目上使用过,广泛的admin(很多窗口和部分)是在ExtJS和前端中构建的,它需要更快的周转时间来进行调整,但是ui的交互性有限,是在jQuery中构建的。

希望这可以帮助


12

我不同意jQuery的学习曲线比ExtJS快。ExtJS中的每个组件在站点上都有一个经过实践的示例,并且API文档绝对出色,结构化,易于使用且完整。

选择什么取决于您的界面。在JQuery中,更多类似web-2.0的闪亮界面可能会更容易一些,ExtJS界面看起来不错,但非常像应用程序。就是说,如果您要创建一个非常复杂且数据繁重的界面,我认为这两者之间没有可比性。ExtJS允许您像对后端一样进行界面编程,完全面向对象。如果您不喜欢默认组件的某些行为,请覆盖它。自己创建可重复使用的组件非常容易。在ExtJS 3中,引入了Direct层,该层消除了Ajax客户端-服务器通信的所有返回麻烦,并自动为您批量处理多个调用,从而减少了需要喂入接口的服务器请求的数量。我可以继续,但是ExtJS对我来说是天赐的礼物,

Rob,祝您一切顺利,Rob


2
尝试将TreeLoader与另一种数据格式一起使用,它们仅支持一种格式,甚至不是正常的REST风格的json返回。零文档。一旦需要使用其任何类方法的替代功能,就必须“替代”复制/粘贴并自行更改。我敢肯定,并非总是可以用super覆盖某些方法,但是Crockford说这在JS中是很愚蠢的事情。
德鲁

@Drew我对此感兴趣,希望了解JQuery和ExtJS 4的要点。我正在考虑将ExtJS4用于我的一个非常注重形式的项目。Thx
cbmeeks 2011年

8
好吧,如果我发布带有ExtJS4的要点,可能会侵犯版权。我在一个当前项目中回顾了2个月的ExtJS3,并且该框架感到非常僵硬和无情。我发现自己正在修改小部件以使其可扩展,并且示例仅适用于特定类型的案例。此外,许多示例并非由Sencha完成,而是在其论坛的付费专区中发布。我会推荐YUI,他们会更多地添加他们的产品,并提供踢屁股文档站点。
德鲁

2
像任何东西一样,ExtJS并不适合所有人。如果感觉对您来说太僵硬,还有许多其他可能会更适合您的可能性。对我而言,ExtJS并非一成不变。没有一个框架可以让我以结构化的方式创建非常复杂的应用程序,而无需花100倍的时间进行重新发明。紧接着,我发现该框架非常灵活和宽容。您对我真的不了解的文档的观点,我发现文档比我所知道的要好得多
Rob Boerman 2012年

12

我刚开始在两个不同的项目中分别使用其中的两个。(扩展4和JQuery)。是的,Ext似乎更“企业化”,但是文档和学习jquery的过程非常愉快。.另一方面,考虑到大多数文档将引用ext 3,而ext却令人困惑,我正尝试在ext 4上做事情。

到目前为止,关于jquery的所有书籍和教程都使我比ext有了更多的发展。

重要的是要注意,我的js经验有限。


4

让我们来看看。EXT具有陡峭的学习曲线以使其正确使用,并且功能极其强大。这是我使用过的唯一的JavaScript库,我将它称为实际框架(在某种意义上类似于我尚未使用的YUI)。在4.x版中,Sencha对MVC模式做出了全面承诺,这吸引了许多有经验的程序员。

另一方面,jQuery使执行简单的事情变得容易,而根据我的经验,做复杂的事情几乎是不可能的。

为什么将自己限制为仅那两个?例如,看一下MooTools。它是一个功能强大,灵活且可扩展的库,您无需猜测它的运行方式(例如使用jQuery),也无需使用原始JS来执行除简单的DOM操作或JSON加载之外的其他任何操作(例如,使用jQuery!)。 。

我注意到没有人提到Dojo,它也非常强大,非常复杂,而且从我在办公室其他团队的肩上冲浪中所看到的内容,在浏览器中非常繁重。

EXT使用了一些附加工具,例如指南针(在ruby中运行)和YUI压缩器,可帮助您在“完成”站点后输出极其有效的简化下载包。我放加引号,因为我认为这是一个EXT垮台。毕竟,站点几乎从未完成过,并且此过程大致类似于编译Java应用程序,因为如果您进行了任何更改,则必须重新经历整个输出过程。

使用EXT可以直接获得很多东西,但这也意味着要学习很多东西,要执行一个响应迅速,外观漂亮的项目需要做大量的计划和考虑。在过去,他们曾经称其为“纪律”,但是如今这并不流行(有关更多信息,请参见“ jQuery”)。

但是我没有意见!


3

我只会回答这个问题,因为它显示为“ jquery vs extjs”的第一个结果。像这里的一些人一样,我在专业上都使用过。我特别喜欢第一个回应。对我来说,如果我要与非常小的团队一起构建非常小的应用程序,那么我肯定会使用jQuery。但是,如果您在一个大型团队中工作,那么将jQuery的工作分开来实现一个用户故事可能并不容易。借助ExtJS,他们真正拥抱了OO范式并使其易于维护。另外,您可以使用他们的MVC来在开发人员之间划分工作。但是,它带有陡峭的学习曲线。那些说“看看样本,你就是金子!”的人!显然不了解如何编写良好的extjs代码。人们在解决ExtJS UI部分之前确实需要学习ExtJS Core。尽管这确实是该公司的错,因为他们没有好的开发人员文档。但是,好消息是,像《 ExtJS In Action》这样的书可以解救。通常,我将使用ExtJS,因为它比jQuery更具结构性。当然,jQuery的好处是灵活性……但是,太多的灵活性可能会扼杀项目……仅仅因为您可以将乐高乐高胶粘在眼中并不意味着您应该这样做。如果有钱,请选择ExtJS。jQuery的好处是灵活性……但是,太多的灵活性可能会破坏项目……仅仅因为您可以将乐高乐高胶粘在眼中并不意味着您应该这样做。如果有钱,请选择ExtJS。jQuery的好处是灵活性……但是,太多的灵活性可能会扼杀项目……仅仅因为您可以将乐高乐高胶粘在眼中并不意味着您应该这样做。如果有钱,请选择ExtJS。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.