What JavaScript framework is the least evil?
我不是今天的JavaScript框架的忠实粉丝。我认为很多库可以写得更好,因为偏袒而不是理解手头问题的要求而被选为项目,而且一些JavaScript开发人员过于依赖它们到jQuery或dojo程序员,而不是JavaScript程序员。唉,这是一个人的意见,事实是JavaScript框架是生活的一部分。所以,这是一个旧问题的新视图:哪个JavaScript框架最不邪恶?也就是说,哪个库最符合最佳实践?考虑到jQuery片刻,它使用浏览器嗅探并且不使用new作为构造函数。它非常受欢迎,有些人可能会通过某种标准来判断它是最好的,它忽略了在这些情况下被接受为最佳实践的内容。
编辑:请不要说jQuery或YUI或道场或其他什么。请说明哪些但也提供示例。
-
@Timothy I think a lot of the libraries could be written better - 写一个然后我们都会很高兴
-
@Timothy,我喜欢jQuery - 但这仅仅是因为它背后有一个良好的用户群和社区。让它变得不那么邪恶... YUI :)
-
我可能...... :)
-
@Timothy -"我认为很多库可以写得更好"大多数开源项目都是从这个声明开始的
-
jQuery不使用浏览器嗅探,而是为开发人员提供支持,以便他们选择使用浏览器嗅探(请参阅api.jquery.com/jQuery.browser)。此外,jQuery本身也是作为构造函数实现的(参见stackoverflow.com/questions/1853223/&hellip ;,即它使用new)。
-
请定义"最佳实践"
-
jQuery提供浏览器嗅探,但建议您不要使用它。在内部,它仅使用功能嗅探。并且它实际上没有任何new适合的物件。所以我不认为这些是讨厌jQuery的好理由。
-
疯狂 - 引发战争!
-
...不,更好的理由是它过于过载的界面(难以阅读和确定哪种方法可能是偶然使用的),它混乱的链式方法(所以你是从来没有确定你是否正在获得一个返回的对象或原始的),缺少一个select-one方法(所以你只有select-many,当你的选择器无法匹配任何东西时不会产生错误),通过clean函数鼓励字符串黑客选择器和HTML,特别是它自己令人震惊的字符串黑客攻击与HTML处理有关。
-
我从来没有找到一个在某种程度上不邪恶的框架? - ?原型1.x和jQuery一样糟糕,虽然以不同的方式? - ?我并不相信它可以制作一个非框架邪恶。 JavaScript和DOM的本质使得很难以干净的方式添加功能。地狱,简单的JavaScript本身就是非常邪恶的。
好吧 - 我曾经是相同的观点,从来没有真正使用JS库 - 好吧,我可以自己做。但在我的工作中,我被迫使用Jquery。
在此之前,我会使用Prototype和script.aculo.us并喜欢它,因为它最少注入您的日常工作流程。
但是说libs是邪恶的并不是我真正赞同的。查看许多库的代码,它们写得很好而且简洁。它们通常适合所有没有错误的浏览器。
这是获取这些框架的真正原因 - 实现您可以创建的代码,只有更好。我永远不会大胆地陈述,我可以像框架所拥有的100个贡献者一样彻底地完成工作。
此外,这些JS库为您吞咽的时间也是如此。
如果我可以在创建和调试项目的过程中减少3天 - 因为有人为我做了完全相同的事情,那太好了!希望我能在一天回馈。
我不相信有邪恶的框架,只是不同。
大声笑。这肯定是主观的,但无论如何......
我个人认为YUI是最不邪恶的,因为它有道格拉斯克罗克福德自己提倡它。 ('nuf说)
虽然,我并不认为其他框架必然是邪恶的......
jQuery似乎很容易使用(只包括jquery.js,复制粘贴一些样本,破解一点,你就完成了)。
Dojo追求完整性(我能看到的)实现了许多实用程序(很像java的apache commons),以及广泛的小部件,网格和图表列表。
然后是Prototype,我不是很喜欢它,因为它修改了原生对象。
还有Ext JS,它有很多小部件和可视化组件来构建完整的fledge应用程序,但我会远离......
-
Ext JS现在是[GPLv3许可](sencha.com/products/extjs/licensing,并且不再存在开源争议。
-
codemonkeyism链接被破坏了
我的投票是jquery。使用noConflict(),您可以在同一页面上使用多个版本,使用css选择器轻松学习曲线。
我的图书馆
-
它自称为"Ajax库"。 我希望网站有一个-1按钮
-
A)它没有。 它说它是一个"浏览器脚本库(也称为Ajax库)",指的是许多人(不知道更好)认为"JavaScript库"和"Ajax库"是相同的。 和许多框架一样,Ajax只是一小部分,如果不需要可以省略。 B)"Ajax库"有什么不好?
-
"阿贾克斯"已经意味着十几种不同的东西,主要是由于错误/过度使用。 我宁愿完全避免使用这个词。 让我们留下流行语来营销。
-
我完全同意你的看法。 恕我直言,该网站上的措辞,图书馆的结构和建设者的存在确实承认。
-
Cinsoft似乎死了。