众所周知,Node.js能够通过提供不同的框架,使得Web应用程序的开发过程更为方便且高效。下面让我们来一起浏览一下,目前能够加速Web开发的十种Node.JS框架。
Hapi.js可谓Node.js中强大的框架之一。它的功能不但丰富,而且实用。它可以被用于构建一些应用程序,以实现与API、或其他软件应用的交互。
Hapi.js能够提供的功能包括:使用JOI(译者注:是一种工具模块,可用于JavaScript对象的校验)的输入验证、缓存、日志记录、配置管理和错误处理等方面。所有这些功能都是旨在构建具有简洁代码、以及较高性能的Web应用和API。
Sails.js是另一个功能强大的Node.js框架,也是备受欢迎的MVC框架之一。它可以被用于构建自定义的、企业级的实时应用。作为一款前端必备的框架,Sails.js允许用户在较短的时间内,构建出实用、且适合于生产环境的应用程序。
另外,Sails.js具有强大的针对对象关系映射(Object Relational Mapping,ORM)的解决方案、以及用到了Waterline(译者注:它是Github中支持各种主流数据库的ORM模块)的数据库层。因此Sails.js能与大多数可用的Grunt模块相兼容。
Mean.js有时也被称为Mean.IO,它是各种框架的组合,其中包括:MongoDB、Express.js、angular.js和Node.js。
由于支持JavaScript的所有组件,Mean.js为Web应用的开发提供了一种简化和加速式的框架。
Express.js通常被认为是Node.js的基本框架。它提供了一系列广泛的服务功能,可被用于构建各种移动和Web应用、以及对应的API。
作为一款快速的、轻量级的框架,Express.js提供了包括模板引擎、数据库集成、以及多路由在内的各种实用功能。
Meteor.js是一种全栈式框架,它允许用户生成与Android、iOS和Windows平台相兼容的跨平台代码。
通过与MongoDB集成,Meteor.js可以自动将数据的更改部分,直接传递到客户端,而无需同步任何全量的代码。这些主要依靠的是分布式数据协议、和“发布-订阅”模式。而这恰恰成就了其成为强悍的动态Web应用开发框架。
Kraken.js是一款能够提供动态配置的,基于Node.js的Web应用框架。它为Node.js添加了一个安全层、以及一套能够扩展到Express.js上的结构。
另外,Kraken.js还提供了一定的安全性,可以处置应用程序生命周期中的各种事件、以及中间件的相关功能。Kraken.js带有如下几个可以独立使用的模块:
Flatron.js为所有用户提供了非常实用的现代化资源和工具。他们中一些可用于修改URL路由、创建模板、管理数据和插件。
同样作为一种Node.js框架,Koa.js消除了通过使用ES6生成器来进行的回调与操作。Koa.js的内在灵活性体现在:它允许用户为Web应用选择相关的模块。
构建于Express.js之上的LoopBack,允许用户实现各种可伸缩的API。LoopBack是通过StrongLoop Arc来监控和部署应用程序的。它使用Swagger 2.0来扩展内置API的管理器,进而让用户创建相应的API文档。该特性让LoopBack成为Node.js中具有灵活性、且全面的Web应用开发框架。
Keystone.js经常被广泛地用于开发原生数据库驱动(database-driven in nature)的Web应用、网站、以及各种API。
Keystone.js使用的是诸如MongoDB之类的NoSQL数据库。它使用Mongoose,一个先导式的ODM(Object Data Model)包,来连接用户的MongoDB数据库。通过提供嵌入式服务,Keystone.js还可以管理各种UI、以及身份验证服务。
原文标题:10 Powerful Node.JS Frameworks to accelerate the Web Development
作者:Sourabh Nagar
越来越多的人开始站队 Angular、Vue、React,仅仅围绕这些库或者框架进行前端技术讨论,这实在不是什么好的现象。其实我想基于我个人的经验聊下前端的演进和未来,希望可以贡献微薄的力量,消除一些我个人认为的前端社区不太好的风气。
近几年可谓是 JavaScript 的大爆炸纪元,各种框架类库层出不穷,它们给前端带来一个又一个的新思想。从以前我们用的 jQuery 直接操作 DOM,到 BackboneJS、Dojo 提供监听器的形式,在到 Ember.js、AngularJS 数据绑定的理念,再到现在的 React、Vue 虚拟 DOM 的思想。
新框架(新工具,语言),一、了解概念,把握思路,二、迅速实战,见招拆招,三、深入文档,求人不如求己,四、掌握原理,有恃无恐,五、源码分析,自立门户。如果你已经熟悉一门计算机语言,当再学习其他语言的时候,会发现他们几乎是大同小异,对比着学习,会令你事半功倍。
我曾见过很多很多人盲目地使用(前端)框架,如 React,Angular 或 Vue等等。这些框架提供了许多有意思的东西:它们支持组件化;它们有强大的社区支持;它们有很多(基于框架的)第三方库来解决问题;它们有很多(很好的)第三方组件;它们有浏览器扩展工具来帮助调试;它们适合做单页应用。
Web 技术变化得很快,而最佳技术实践也在不断发展。Uber 的 Web 平台团队开发了 Fusion.js,一个开源的 Web 框架,用于简化 Web 开发,并构建出高性能的轻量级 Web 应用程序。
要使用现代的前端框架,你需要下载开发环境和依赖,编译代码,然后在浏览器上运行。这个是好是坏?究竟是什么导致了这种不必要的复杂性?是因为我们构建的网站太复杂,还是因为框架本身就很复杂?
有一个流传较广的笑话,一个人在stackoverflow中提了一个问题,如何使用javascript实现一个数字与另外一个数字相加。最高票回答是你应该使用jQuery插件,jQuery插件可以做任何事情。 历史总是在重演,以前是jQuery,现在可能是react或vue。不同的框架有不同的应用场景,杀鸡不要用牛刀
Web框架(Web framework)是一种开发框架,用来支持动态网站、网络应用和网络服务的开发。这大多数的web框架提供了一套开发和部署网站的方式,也为web行为提供了一套通用的方法
Ionic 是一个高级的 HTML5 移动端应用框架,也是一个开发混合移动应用的前端框架,旨在让 Web 开发者更轻松地构建、测试、部署和监控跨平台应用。Ionic 基于 Angular 语法,之前一直不支持 Vue 和 React 。
最近想找一个简单的.Net下的轻量级Web框架,作为用户的本地的一个WebServer,实现同浏览器程序的一些简单交互,并调用本地服务,实现类似浏览器插件的功能。它有如下几点要求:
内容以共享、参考、研究为目的,不存在任何商业目的。其版权属原作者所有,如有侵权或违规,请与小编联系!情况属实本人将予以删除!