原文

https://scotch.io/bar-talk/10-node-frameworks-to-use-in-2019

node Framworks列表:

http://nodeframework.com/

框架类型:

  • MVV frameworks:

    • Sinatra-like: 提供丰富的配置,比Rails-like or full-stack更少的选择opinionated
    • Rails-like:使用提供的template,创建自己的app
  • Full-Stack frameworks:  Node.js真正的闪光之处。绑定scaffolding, template engines, websockets和persistence libraries,让你实时的扩展web apps.
  • Rest api frameworks: 配合前端mvc框架。

摘译:

越来越多的开发者转向使用JavaScript来建立更多的app,特别是web。

当Node.js在2009年被介绍,作为一个工具,建立可扩展的服务端web app。

它带来了大量优势,包括并不限于事件驱动event-driven non-blocking input/output model, single-threaded asynchronous编程。

多年过来,大量有经验的js开发者已经建立了许多框架,用来更容易的使用Node.js开发web程序。

进入2019, 我列出一些著名的Node.js框架,你可以考虑使用它们,来建立web app。

What is a Node framework?

A Node.js framework是一些抽象的设计,使用Node.js建立。它包括了给出的框架设计的控制流。

所以,它就像是一个程序的骨骼skeleton。你客制代码就像填肉,最终完成程序。

因此对每个Node.js function, 会有一些普通的执行给这个框架there would be some generic implementation unique to the framework ,之后,框架需要使用者跟随框架的指导来增加更多的代码,用于定义它的使用case。

Benefits of Node frameworks

因为Node.js frameworks的生产率productivity,速度speed,scalability扩展性,让它们成分第一的选择来为公司建立企业级别的applications。

Node.js让你在前后端使用相同的语言,节省了学习一门新语言的压力,只需一些简单的配置implementation,也帮助你始终维护相同的编码pattern。

通过使用一个框架,你可以和一些工具,指导,和推荐的practices一起工作,帮你省时间。

也可以固定化一个团队的编码标准。

Selecting a Node Framework

选择一个框架有些困难和主观。这是因为我们的选择基于我们喜欢的某个特点。

从程序的框架重量,速度,简单化,学习曲线,灵活性,配置,使用案例,甚至是一些案例的知名程度,GitHub stars。

之后让我们深度挖掘这个主题,看看Node.js框架的名单。这有助于你开发js程序的生产率,特别是server-side。

Stars不代表所有,我们将按照Scoth.io上的知名程度逐个讨论。

AdonisJs [GitHub Stars: 5,053] (Rails-like)

支持:ORM。SQL query容易学习 ,可以快速建立简单的query.

支持:No-sql数据库: 如MongoDB。 使用MVC结构。

学习的相关:https://scotch.io/tutorials/building-a-web-app-with-adonisjs

Express.js [GitHub Stars: 41,036] (Sinatra-like)

Express.js is a fast, non-opinionated, minimalist web framework for Node.js.

快速的,非固执的 , 极简主义的开发网页框架。它是用Node.js建立的简单技术,行为像一个软件,帮助管理servers和routes.

着眼于异步的原生的Node.js, 实时上Express.js是由node建立的。

有能力来建立一个轻量化的程序,这个能力能够处理超过一个的单一的请求,这个能力依赖服务器能的技术。如express。

robust API,让使用者配置routes以便发生/接收请求,在嵌套和数据库(HTTP server framework)之间。

一个大的优势,它支持大量的其他包和模版引擎,如 Pug, Mustache, EJS等等。

  • Almost the standard for Node.js web middleware

  • Fully customisable

  • 低学习曲线
  • Majorly focused on browsers, making templating and rendering an almost out of the box feature.

作者不认为短期内会过期。

Meteor.js [GitHub Stars: 40,490] (full-Stacknes   )

a full-stack JavaScript platform, 开发现代web和移动 app。(

10 Node Frameworks to Use in 2019的更多相关文章

  1. Node.js权威指南 (10) - Node.js中的错误处理与断言处理

    10.1 使用domain模块处理错误 / 272 10.1.1 domain模块概述 / 272 10.1.2 创建并使用Domain对象 / 274 10.1.3 隐式绑定与显式绑定 / 276 ...

  2. JavaScript基础10——node对象

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...

  3. 10.Node.js核心模块

    1.全局对象2.常用工具3.事件机制4.文件系统访问5.HTTP服务与客户端 一.全局对象(Global Object), 与window对象一样 process ==> 全局变量, 描述当前N ...

  4. 10 —— node —— 获取文件在前台遍历

    思想 : 前台主动发起获取 => ajax 1,前台文件 index.html <!DOCTYPE html> <html lang="en"> &l ...

  5. k8s Kubernetes v1.10 最简易安装 shell

    k8s Kubernetes v1.10 最简易安装 shell # Master 单节点快速安装 # 最简单的安装shell,只为快速部署k8s测试环境 #环境centos 7.4 #1 初始化环境 ...

  6. node.js操作数据库之MongoDB+mongoose篇

    前言 node.js的出现,使得用前端语法(javascript)开发后台服务成为可能,越来越多的前端因此因此接触后端,甚至转向全栈发展.后端开发少不了数据库的操作.MongoDB是一个基于分布式文件 ...

  7. node.js安装和配置(windows系统)

    node.js安装和配置(windows系统) node javasript vscode  node是javascript的管理工具,所以开发javasript项目都要下载安装和配置node. 传送 ...

  8. (翻译)《Hands-on Node.js》—— Introduction

    今天开始会和大熊君{{bb}}一起着手翻译node的系列外文书籍,大熊负责翻译<Node.js IN ACTION>一书,而我暂时负责翻译这本<Hands-on Node.js> ...

  9. JavaScript高级程序设计(第三版)学习笔记8、9、10章

    第8章,BOM BOM的核心对象是window,具有双重角色,既是js访问浏览器的一个接口,又是ECMAScript规定的Global对象.因此,在全局作用域中声明的函数.变量都会变成window对象 ...

随机推荐

  1. iOS App架构相关

    一) 我们可以定义一个好的架构应该具备的特点: 任务均衡分摊给具有清晰角色的实体 可测试性通常都来自与上一条(对于一个合适的架构是非常容易) 易用性和低成本维护 二) 传统的MVC模式.:三个实体间相 ...

  2. CentOS6.8下安装mysql

    转自https://blog.csdn.net/jeffleo/article/details/53559712?utm_source=itdadao&utm_medium=referral ...

  3. myeclise中创建maven web程序

    myeclipse自带了许多插件,因此使用频率很高,但是对maven框架下web程序似乎不是很好的支持,每次创建web程序总是会报一大堆的异常,因此特此记录一下如何在myeclipse下创建一个web ...

  4. selenium css定位方式

  5. Google Protocol Buffer在vs2010下配置

    1.从这里下载protobuf-2.6.1.tar.gz到桌面,并解压,解压后的文件夹为protobuf-2.6.1.(我的桌面为C:\Users\mcl\Desktop) 2 .进入文件夹proto ...

  6. cf水题

    题意:输入多组数据,有的数据代表硬币的长宽,有的数据代表钱包的长宽,问你当这组数据代表钱包的长宽时,能不能把它前面出现的所有硬币全部装下. 思路:只要钱包的长宽大于前面出现的所有硬币的长宽就可以装下, ...

  7. TCPCopy 使用方法

    TCPCopy 使用方法 TCPCopy是一种请求复制(所有基于tcp的packets)工具,可以把在线请求导入到测试系统中去.目前此工具已经广泛应用于国内各大互联网公司. TCPCopy七大功能 1 ...

  8. iis6-0 cve-2017-7269 批量验证脚本

    代码地址 import subprocess f = open('ips.txt', 'r') flines = f.readlines() vulnsrvs = 0 i = 1 for line i ...

  9. LuoguP5221 Product

    题目地址 题目链接 题解 注,下方\((i,j)\)均指\(gcd(i,j)\),以及证明过程有一定的跳步,请确保自己会莫比乌斯反演的基本套路. 介绍本题的\(O(n)\)和\(O(n\sqrt{n} ...

  10. Docker run 出现问题如何调试?

    docker run -ti 3f5dd697cc83 /bin/bash #进入image的目录 ls -l #列出所有目录 dotnet run WestWin.Ads.Crawler.WebAp ...