15321250321
010-86462584

APP开发 > APP学院 > 软件开发

自学app软件开发-MERN堆栈

2022-07-07

什么是堆栈?

从技术上讲,堆栈是操作系统、工具、语言、数据库系统、脚本语言、Web 服务器、框架和 API 等的集合,它们一起工作以创建完整的软件解决方案。

根据 Layman Guide,堆栈是软件程序或技术的集合,它们协作以实现共同目标,例如软件开发。它包括密切相关的软件APP软件,可以帮助工作流程,从而完成某些任务。

什么是 MERN 堆栈?

MERN 堆栈包括 MongoDB、Express、React 和 Node.js。MERN 堆栈是一个开源的全栈 JavaScript 解决方案,用于快速轻松地开发和部署全栈APP软件。创建 MERN 是为了使APP软件开发尽可能简单。因此,MERN 的每个组件都服务于我们必须了解的特定目的。

MVC(模型视图控制器)架构

任何 Web 或移动APP软件都可以使用 3 层 MVC 架构构建,该架构由三层组成——模型、视图和控制器。

模型——这一层负责与数据库相关的任务,例如检索、存储、更新和操作数据库。

视图 - 视图层负责用户交互。前端是指用户在网页上看到的按钮、图像、颜色和动画。在用户界面中,它使来自模型层的数据可见。

控制器——该层管理视图和模型之间的前后通信。它的工作是接受用户请求,用模型层处理它们,并将结果发送回视图层用于可视化部分。

MERN 堆栈的组件

1. MongoDB:独立于平台的

它是一个开源、跨平台的面向文档的数据库程序。它是一个 NoSQL 数据库,具有基于 JSON 文档的模式(可选)。MongoDB 具有适应性,其文档模型在代码中定义对象,从而可以轻松进行数据操作。因为 MongoDB 的核心是分布式的,所以它具有水平扩展和高可用性。

MongoDB 的特点是水平扩展、高可靠性、端到端保护、管理工具和地理分散。

2. 后端框架(Express)

Express 是一个 Node.js 后端 Web APP软件框架,也称为 Express.js。它具有许多使开发 Web APP软件比使用 Node.js 更容易和更快的特性:

  1. 首先,Express 易于设置和定制。

  2. 其次,它有助于创建基于 HTTP 和 URL 的APP软件路由。

  3. 第三,Express 包含几个中间件组件来帮助完成额外的任务。

  4. 最后,Express 使在APP软件中提供静态资源和文件变得更加容易。

3. React:Library是一个前端开发的第三方库

为什么使用 ReactJs?因为它是 Facebook 发布的一个开源免费的前端 JavaScript 库。它用于为交互式 Web APP软件(用户界面)制作用户界面。它可以开发移动APP软件和WebAPP软件并管理视图层。React 允许开发人员创建封装的段来维护其状态并将它们集成以创建复杂的接口。使用 Node 时,React 也会在服务器上呈现。

4. Node.js 运行环境

它是一个跨平台的移动应用开发平台,后端的开源 JavaScript 运行环境。Node.js 是一个 V8 引擎,用于在 Web 浏览器之外运行 JS 代码。Node.js 可用于为网页创建独特的内容、收集表单数据、更改数据库信息和管理服务器文件等。Node.js 不是为每个请求创建新线程,而是一次只运行一个进程。它还包括一组 I/O 原语,以防止 JS 代码卡住。

MERN堆栈开发的过程是什么?

如前所述,MERN 堆栈的每个元素都可以独立使用;但是,开发人员可以通过结合这些技术来创建高性能的 Web APP软件。在本节中,我们将了解 MERN 堆栈的工作原理。

让我们看一个插图来帮助您理解整个机制。假设您已经为服装网站开发了一个电子商务聊天机器人。客户现在可以通过 Web APP软件购买 T 恤。由于网页上的链接,用户被引导到 T 恤页面。但是,我们将如何从后端获取数据?

  • 用户到达我们的 React 登录页面。

  • 通过单击该链接,用户购买了一件 T 恤。无需重新启动系统即可呈现 T 恤页面,因为它是单页APP软件。

  • 但是,我们现在没有关于 T 恤的任何数据,因此状态为空。我们将使用 API 调用从后端获取数据。

  • 由于数据检索过程的自动化性质,这将需要更长的时间。与此同时,用户会看到一个加载的 GIF。

  • 在后端,Express JS 搜索命中端点并调用适当的控制器函数来检索信息。

  • 在控制器中,我们可以使用 mongoose 来查询数据库、检索数据并以 JSON 格式返回。

  • React 接收 JSON 数据并使用获取的信息更新状态。

  • 然后 React 将使用更新的状态重新渲染组件,并用 T 恤信息替换加载的 GIF。

  • 这就是 MongoDB、React、Express 和 Node 的通信方式。
    以上就是自学app软件开发-MERN堆栈的介绍。

客服QQ:121446412 联系电话:15321250321

京ICP备17026149号-1

版权所有@2011-2022 北京天品互联科技有限公司 公司地址:北京市海淀区上地南路科贸大厦408

收缩
  • 15321250321