在这里,框架类别下提到了 jquery:http : //en.wikipedia.org/wiki/Comparison_of_JavaScript_frameworks
jquery 是 javascript 库还是框架?
在这里,框架类别下提到了 jquery:http : //en.wikipedia.org/wiki/Comparison_of_JavaScript_frameworks
jquery 是 javascript 库还是框架?
图书馆。根据主页,我同意。
框架通常是强制以某种方式实现解决方案的东西,而 jQuery 只是一种工具,可以使实现您想做的事情变得更容易。
当然,它是一个 javascript 库。但是关于是否是一个框架,我只是认为它不是一个框架。看看维基百科对软件框架的定义:
它是一组软件库,提供定义的应用程序编程接口。
jQuery 只是一个库。之后它说:
框架包含将它们与普通库分开的关键特征:
- 控制反转 - 在框架中,与库或普通用户应用程序不同,整个程序的控制流不是由调用者决定的,而是由框架决定的。
所以,我认为这不是一个框架。
- 库 - 一组在编写 Web 应用程序时很有用的函数。您的代码负责并在
它认为合适时调用库。例如,jQuery。- 框架 - Web 应用程序的特定实现,您的代码会在其中填写详细信息。该框架负责并在需要特定于应用程序的内容时调用您的代码。例如,杜兰达尔、ember等。
框架和库不一定是相互排斥的术语。框架通常是一个库或库的集合。
严格来说,jQuery 是一个库,但在某种程度上,它确实符合软件框架的定义。尽管许多人会争辩说 jQuery 不够严格地满足软件框架的定义,但事实是,没有其他 JavaScript 框架完全满足框架的定义。
软件框架的定义特征之一是其代码不受修改。在 JavaScript 中,情况显然不是这样。任何可以调用到客户端代码中的库或框架都是可修改的,尽管更改它们将违反最佳实践。因此,如果可以将 Bootstrap 或 AngularJS 称为框架,那么 jQuery 也没有理由不能称为框架。此链接包含有关 jQuery 如何满足被称为框架的标准的更详细说明。
或许 jQuery 更像是一个框架而不是一个库的最好解释是,作为开发人员,您可以选择不使用其任何类似框架的功能。例如,您可以在同一行中混合使用简单的 jQuery 语句和标准的 JavaScript 语句。AngularJS 和 Bootstrap 通常不允许你这样做。因此,jQuery 是否是框架的准确答案是“这取决于您是否选择将其用作框架”。