zoukankan      html  css  js  c++  java
  • nodejs主要框架

    在浏览器以外运行 JavaScript 对于 JavaScript 爱好者来说非常神奇,同时也肯定是 web 应用程序开发界最受欢迎的进步之一。全球各地的开发者张开双臂拥抱 NodeJS。

    对于新手来说,Node.js 是 JavaScript 运行时,允许你在浏览器之外服务器上运行 JavaScript 代码。它是基于谷歌 Chrome 的 V8 虚拟机引擎建立的,V8 虚拟机引擎用于在 Chrome 浏览器中支持 JavaScript。

    NodeJS 逐渐普及的步伐是因为它可以让你只使用 JavaScript 就可以建立大规模、实时性、可扩展的移动和 Web 应用程序。

    随着节点生态系统的增长,框架也开始着手加快工作流程。有许多的 Node.js 框架,允许你构建实时的端到端网络应用,而无需任何其他第三方 Web 服务器、应用服务器、工具和技术。

    通用性的 Node 框架就像快递,Koa 和 Hapi 更加灵活,让你做你想要的一切,最大限度的满足开发需求。但是,在最初你需要投入更多的努力,更加依靠开发者作出正确的决策。

    而另一方面,像 Mean.io,Meteor, Derby 和 Mojito,有自己的标准结构和技术体系,灵活性较差。然而这些框架不会给开发者太多做错误决策的空间。

    让我们来看看目前可用的最好、最强大的 NodeJS 框架,并帮助你建立实时的、各种规模和复杂性的可扩展 Web 应用程序 -

    1. Node.js Express

    对于一个已经在使用 node.js 的开发人员来说,Express 或者"node.js express"并不是一个新鲜事。Express 框架提供了对 node.js 原生 API 的比较好的封装,从而使开发者更加容易地使用node.js。

    Express 框架提供了用来开发强壮的 web/移动应用,以及 API 的所有功能。并且开发人员还能够方便地为它开发插件和扩展,从而增加 Express 的能力。下面列出了一些 Express 提供的基本的功能:

    - 可以和任何的第三方数据库进行通讯

    - 可以使用任何的用户认证方式

    - 可以使用任何符合 Express 接口定义的模板引擎

    - 可以按照需要定义工程目录

    通过使用 Node Express,你可以使用更少的代码来实现功能。至少通过使用 Node Express,你可以实现中间件来响应 http 请求,可以定义路由表来定义对不同请求的响应函数,还可以使用模板引擎来输出 html 页面。

    对于一个 NodeJS 开发新手来说,Express 还提供了如下的好处:

    1)Express的学习曲线并不陡峭,可以很快上手;

    2)Express 有非常庞大的社区,和组织良好的文档,新手可以很容易得到所需要的一切。

    Express 根据 MIT 协议进行开源,目前 StrongLoop 对它提供支持。

    你可以通过 Express 的官方网站 expressjs.com 获得更多的信息。

    2. Sails.js(node.js mvc)

    Sails 作为一个非常稳固的 nodejs 框架,提供了建立任何规模的 web 应用所需要的所有功能功能。

    Sails.js 在底层使用了 express框架来提供对 http 请求的处理,同时使用 Socket.IO 框架来处理WebSocket 请求。同时作为一个前端应用开发框架,它允许开发人员选择他/她熟悉的技术来开发应用。

    同时 Sails.js 也通过 waterline 框架实现了 ORM 功能。通过这个功能,你的应用程序可以在不进行大的修改的前提下,就可以从一个后端数据库,切换到另外一个后端数据库(也可以是一个NoSQL数据库)。

    Sails 特别适合用来开发对数据的实时更新有较高要求的应用,比如多人棋类游戏,单页web应用等等。如果你对 Ruby, Django 或者 Zend 有一定的了解,那么你将非常容易理解Sail中的概念。

    简单来说,Sails.js 既给开发者提供了一个优秀的 MVC 框架,也提供了一定的灵活性,让开发者可以自主选择前端开发方式和后端的数据库。 

    Sails.js 是由 Mike McNeil 创建的,现在由 Treeline and balderdash 提供支持。Sails.js 在 MIT 协议下开源。

    你可以在网站 sailsjs.org 上找到更多关于这个框架的内容。

    3. KOA

    KOA 是 node.js mvc 框架的后起之秀,在2013第四个季度才发布了第一个版本。开发 KOA 的人员基本来自 Express 开发团队,TJ Holowaychuk 是 KOA 开发团队的领导者。虽然 KOA 大部分开发人员来自 Express,但是他们使用了完全不同的技术来开发 KOA,并且 KOA 正成为 Express 一个强有力的竞争对手。

    KOA 框架的核心是 ES6 的 generator。KOA 使用 generator 来实现中间件的流程控制,使用try/catch 来增强异常处理,同时在 KOA 框架中你再也看不到复杂的 callback 回调了。

    KOA 框架本身非常小,只打包了一些必要的功能,但是它本身通过良好的模块化组织,让开发人员可以按照自己的想法来实现一个扩展性非常好的应用。

    许多 JavaScript/Node.js 的忠实开发者都开始选择使用 KOA 来开发新的项目,因为 KOA 提供了更多的灵活性开发应用程序。

    你可以通过koajs.com获取更多的信息。

    4. Meteor

    Meteor 框架是 Node.js 上最出色的全栈框架。项目在 GitHub 上有 28K+ 的赞,拥有大量的自定义包,庞大的社区支持,非常好的教程和文档。在这个领域 Meteor 毫无疑问是王者,你可以用它构建纯 Javascript 的实时 Web 和 手机应用。

    Meteor 最优秀的部分是,无论是服务器端的数据库访问,商业逻辑实现,还是客户端的展示,所有的流程都是无缝连接,开箱即用。整个框架使用统一的 API,Meteor API 同时适用于客户端和服务器端。

    它使用的 DDP 协议可以让你在后端连接简单的数据库服务、企业数据仓库、甚至 IOT 传感器。Meteor 带有自己默认的栈,但又有足够的灵活性,可以让你选择自己的技术方案。如果你不需要尝试其他的框架或者没有其他的条件限制,你可以直接使用默认配置,进行快速地应用开发。

    Meteor 拥有专业化的开发团队,顶级风投的大量资金支持,这都让 Meteor 能够时刻保持业界领先。

    你可以通过 meteor.com 网站进一步了解 Meteor。

    5. egg.js

    为企业级框架和应用而生,是阿里开源的企业级 Node.js 框架。设计原则:

    企业级应用在追求规范和共建的同时,还需要考虑如何平衡不同团队之间的差异,求同存异。阿里没有选择社区常见框架的大集市模式(集成如数据库、模板引擎、前端框架等功能),而是专注于提供 web 开发的核心功能和一套灵活可扩展的插件机制;不做出技术选型,因为固定的技术选型会使框架的扩展性变差,无法满足各种定制需求。通过 Egg.js,团队的架构师和技术负责人可以非常容易地基于自身的技术架构在 egg 基础上扩展出适合自身业务场景的框架。

    Egg.js 的插件机制有很高的可扩展性,一个插件只做一件事。Egg.js 通过框架聚合这些插件,并根据自己的业务场景定制配置,这样应用的开发成本就变得很低。

    6,socket.io

  • 相关阅读:
    MacOS Mojave启动U盘制作及安装方法详细介绍
    Boostnote for Mac——如何使用TeX精美地编写数学公式
    pycharm pro 2019 mac如何重构?
    Understand教程—使用搜索功能的几种方法
    Understand Mac项目视图初级使用
    文本代码编辑CudaText for Mac使用方法
    java学习笔记之面向对象接口
    java学习笔记之遍历ArrayList的三种方法
    java学习笔记之面向对象static,final关键字
    java学习笔记之eclipse下jar包导入
  • 原文地址:https://www.cnblogs.com/tkzc2013/p/10843833.html
Copyright © 2011-2022 走看看