JavaScript 是未来。
该语言得到了众多技术领导者的支持,其中一位是 WordPress 的创始人 Matt Mullenweg,他暗示 WordPress 开发者 应该学习它,这显然向 WordPress 社区传递了一个关于其未来重要性的信息。这个提议受到了良好的欢迎。向更好技术的转型将使 WordPress 能够应对未来的挑战。
JavaScript 的开源姿态也是最好的之一。 与普遍的看法相反,JavaScript 不是一个项目,而是一个开放标准规范,该语言由其核心团队进行演进和维护。 ECMAScript,JavaScript 的另一个花哨名称,不是开源的,但它也具有开放标准。
当您查看 GitHub 时,您可以很容易地看到 JavaScript 的流行程度。 在 存储库数量方面,JavaScript 是排名第一的编程语言。 在 Livecoding.tv 上,其重要性也很明显,成员们正努力制作比任何其他主题都多的 JavaScript 视频。 在撰写本文时,这个自称为娱乐教育的网站托管了 45,919 个 JavaScript 视频。
顶级开源 JavaScript 框架和库
回到主题,JavaScript 拥有一个庞大的社区,这个社区致力于改进技术。 开发者可以使用数百个 JavaScript 框架和库,好消息是最好的框架和库都是开源的。 对于 JavaScript 开发者来说,使用最好的框架或库进行快速开发现在是一种必需。 目前的市场需要快速开发。 此外,在当前市场上,重新发明轮子不是一个好主意。 无论您是 JavaScript 新手还是经验丰富的 JavaScript 开发者,使用库和框架都可以显著提高您的工作效率。
让我们开始吧。
1. Angular.js
Angular.js 是最流行的 JavaScript 框架之一。 开发者使用它来创建复杂的 Web 应用程序。 Angular.js 背后的想法是其单页应用程序模型。 它还支持 MVC 架构。 使用 Angular.js,开发者可以在前端使用 JavaScript 代码,从而实际扩展 HTML 词汇表。
自 2009 年成立以来,Angular.js 有了很大的改进。 Angular 1 当前的稳定版本为 1.5.8/1.2.30。 您也可以尝试 Angular 2,这是对 Angular 1 的重大改进,但该框架尚未被世界各地的开发者采用。
Angular.js 使用数据绑定作为完成工作的主要概念之一。 用户与界面交互。 完成交互后,视图将使用新值进行更新,进而与模型交互并确保一切同步。 在模型中执行底层逻辑后,DOM 会被更新。
2. Backbone.js
并非每个人都打算构建复杂的 Web 应用程序。 对于那些学习 Web 应用程序开发的人来说,更简单的 Web 应用程序框架(例如 Backbone.js)非常适合。 Backbone.js 是一个简单的框架,可以使构建简单的 Web 应用程序变得有趣且快速。 就像 Angular.js 一样,Backbone.js 也带有 MVC 支持。 Backbone.js 的其他关键功能包括路由、RESTful API 支持、适当的状态管理等等。 您还可以使用 Backbone.js 构建单页应用程序。
当前的稳定版本是 1.3.3,可以从 GitHub 获取。
3. D3.js
D3.js 是一个出色的 JavaScript 库,使开发者能够创建具有数据操作功能的丰富网页。 D3.js 使用 SVG、HTML 和 CSS 来实现奇迹。 使用 D3.js,您可以轻松地将数据绑定到 DOM 并启用数据驱动的事件。 使用 D3.js,您还可以创建高质量的数据驱动的网页,这些网页可以更好地理解数据并提供出色的视觉效果。 查看由 D3.js 驱动的 来自 LCF 符号的哈密顿图。
4. React.js
React.js 是一个有趣的 JavaScript 框架。 与其他 JavaScript 框架不同,React.js 非常适合构建高度可扩展的前端用户界面。 React.js 于 2013 年在 BSD 许可下问世,并且由于它为开发复杂而美观的用户界面带来的优势而迅速发展。
React.js 背后的核心思想是虚拟 DOM。 虚拟 DOM 充当客户端和服务器端之间的中介,从而提高了性能。 虚拟 DOM 中所做的更改与服务器 DOM 匹配,并且仅更新所需的元素,从而使该过程比传统的 UI 更新快得多。
您还可以将 Material Design 与 React 结合使用,从而使您能够开发具有无与伦比性能的现代 Web 应用程序。
在下面的视频中查看来自德国慕尼黑的 mittax 如何使用 React Material-UI。
6. jQuery
jQuery 是一个非常流行的 JavaScript 库,具有事件处理、动画等功能。 在 Web 项目上工作时,您不想浪费时间编写代码来完成简单的任务。 jQuery 通过其易于使用的 API 将您从这种困境中解放出来。 它还适用于所有流行的 Web 浏览器。 使用 jQuery,您可以无缝控制 DOM,还可以开发 Ajax 应用程序,这是过去几年中的热门需求。 使用 jQuery,开发者不必担心底层交互,并且可以更快更容易地开发他们的 Web 应用程序。
jQuery 还促进了 HTML 和 JavaScript 代码的分离,使开发者能够编写具有跨浏览器兼容性的干净代码。 此外,使用 jQuery 创建的 Web 应用程序将来很容易改进和扩展。
7. Ember.js
在功能方面,Ember.js 是 Angular.js 和 React.js 的混合体。 当观察支持社区时,您可以很容易地看到 Ember.js 的受欢迎程度。 新功能不断添加。 在同步数据时,它的工作方式与 Angular.js 类似。 双向数据交换确保应用程序快速且可扩展。 它还有助于开发者创建前端元素。
当涉及到 React.js 的相似性时,Ember.js 提供了类似的服务器端虚拟 DOM,以获得更好的性能和可扩展性。 Ember.js 还鼓励编写最少的代码,提供出色的 API 来处理,并拥有一个出色的社区。
8. Polymer.js
如果您曾经想创建自己的 HTML5 元素,那么您可以在 Polymer.js 的帮助下做到这一点。 Polymer 的主要重点是通过允许 Web 开发者创建自己的标签来为他们提供扩展的功能。 例如,您可以创建一个带有自己功能的 <my_video> 元素,该功能类似于 HTML5 中的 <video> 元素。
Polymer 是 Google 于 2013 年推出的,并受 3 条款 BSD 保护。
9. Three.js
Three.js 是另一个 JavaScript 库,专注于 3D 开发。 如果您喜欢动画和游戏开发,则可以使用 Three.js。 在底层,Three.js 使用 WebGL,可以轻松地用于在屏幕上渲染 3D 对象。 Three.js 强大功能的一个流行示例是 HexGL,这是一款未来派赛车游戏。
10. PhantomJS
使用 JavaScript 也可能意味着使用不同的浏览器,当我们谈论浏览器时,资源管理很容易进入讨论。 借助 PhantomJS,您可以借助提供的无头 WebKit 监控 Web 应用程序的性能。 无头 WebKit 是 Chrome 和 Safari 中使用的渲染引擎的一部分。
整个过程是自动化的,您只需要使用可用的 API 设置您的 Web 应用程序。
11. BabylonJS
BabylonJS 与 Three.js 类似,它提供了 JavaScript API 来创建无缝、强大的 3D Web 应用程序。 它是开源的,并且基于 JavaScript 和 WebGL 的强大功能。 创建简单的 3D 对象(例如球体)很容易,您只需几行代码即可完成。 您可以通过阅读其 文档来很好地掌握该库的功能。 主页还提供了出色的演示,以供激发灵感。 请访问官方网站进行查看。
12. Boba.js
Web 应用程序总是有一个共同的需求,那就是分析。 如果您一直在努力将分析插入到您的 JavaScript Web 应用程序中,请寻找 Boba.js。 Boba.js 可以帮助您将分析插入到您的 Web 应用程序中,并支持旧的 ga.js。 您还可以将指标与 Boba.js 集成。 唯一的 requirement 是 jQuery。
13. Underscore.js
Underscore.js 是您空白 HTML 编辑器文件的答案。 当您启动一个项目时,感到迷茫或执行一系列重复您在早期项目中已完成的步骤是很常见的。 为了简化启动项目的过程并为您提供先机,Underscore.js JavaScript 库为您提供了一组函数。 例如,您可以将您最喜欢的 Backbone.js 吊带或您在项目中经常使用的 jQuery 函数一起使用。
诸如“filter”和“调用 map”之类的功能助手为您提供了良好的开端,因此您可以尽快投入工作。 Underscore.js 还带有一套易于测试的套件。
14. Meteor.js
Meteor.js 是一种快速启动构建 JavaScript 应用程序的方法。 它本质上是开源的,可用于创建桌面、移动和 Web 应用程序。 Meteor.js 是一个全栈框架,支持多平台的端到端开发。 您可以使用 Meteor.js 创建后端和前端功能,还可以密切关注应用程序的性能。 围绕 Meteor.js 的社区非常庞大,因此会有频繁的功能和错误修复更新。 Meteor.js 本质上也是模块化的,并且可以配备惊人的 API。
15. Knockout.js
Knockout.js 显然是最被低估的框架。 它由 Steve Sanderson 开发,作为一个开源 JavaScript 框架,并根据 MIT 的许可提供。 该框架基于 MVVM 设计。
特别提及:Node.js
Node.js 是一个强大的 JavaScript 运行时环境。它可以用来构建快速、可扩展的、处理真实数据的应用程序。它既不是一个框架也不是一个库,而是一个基于 Google Chrome 的 JavaScript V8 引擎的运行时环境。 您可以使用 Node.js 创建多样化的 JavaScript 应用程序,包括单页应用程序、实时 Web 应用程序等等。 从技术上讲,Node.js 借助其事件驱动架构支持异步 I/O。 这种方法使其成为开发高度可扩展解决方案的绝佳选择。 在 livecoding.tv 上观看 Node.js 视频。
结论
JavaScript 是 Web 的通用语言。 它的快速发展不仅因为它提供的功能,还因为它周围的开源社区。 上述框架和库是任何 JavaScript 开发人员都必须检查的。 它们都提供了一些探索 JavaScript 和前端开发的方法。 上述大多数库和框架经常被对 JavaScript 及其相关技术感兴趣的软件工程师在 Livecoding.tv 上使用。
如果您有任何补充,请在下面评论并告诉我们。 我们很想知道您为项目使用哪些框架和库,以及背后的原因。
11 条评论