开始使用MEVN技术栈开发01 概述

开始使用MEVN技术栈开发01 概述

简介

Welcome to Beginning MEVN Stack! This book focuses on the key tasks and concepts to get you started to learn and build MEVN stack applications in a faster pace.

欢迎阅读《MEVN堆栈入门》!本书重点介绍关键任务和概念,帮助您以更快的速度开始学习和构建 MEVN 栈应用程序;

It is designed for readers who don ’ t need all the details about MEVN at this point in the learning curve but concentrate on what you really need to know.

它专为那些在学习阶段不需要了解 MEVN 所有细节,而只想了解真正需要了解的内容的读者而设计。

So what ’ s the MEVN stack? The MEVN stack is a popular stack o ftechnologies for building a modern Single Page Application. MEVN stands for MongoDB, Express, Vue and Node.js:

什么是 MEVN 协议栈?MEVN 协议栈是用于构建现代单页面应用程序的流行协议栈。MEVN 是 MongoDB、Express、Vue 和 Node.js 的缩写:

Node.js is one of the most popular server-side frameworks that allow us to execute JavaScript code in a web server.

Node.js 是最流行的服务器端框架之一,它允许我们在网络服务器中执行 JavaScript 代码。

Express is a web application framework for Node.js which make sapplication development in Node easier and faster. Node and Express together form the middle-tier web server of the stack.

Express 是 Node.js 的网络应用程序框架,它能让 Node 应用程序开发变得更简单、更快速。Node 和 Express 共同构成了堆栈的中间层网络服务器。

MongoDB is a NoSQL database which stores data persistently in the form of collections and documents.

MongoDB 是一种 NoSQL 数据库,以集合和文档的形式持久存储数据。

Vue is a frontend framework to build user interfaces.

Vue 是一个用于构建用户界面的前端框架。

Another popular stack variant is the MERN where we use React as t hefrontend. These frontends make up Single Page Applications (SPAs) which avoid reloading the page entirely and just fetches relevant portions of the page from the server to display new content.

另一种流行的堆栈变体是使用 React 作为前端的 MERN。这些前端构成了单页面应用程序(SPA),可以完全避免重新加载页面,而只是从服务器获取页面的相关部分来显示新内容。

我们将开发的应用程序

We will build a Movie reviews app which lets users view and search for movies. They can also log in and post reviews on the movies (fig. 1a, 1b, 1c).

我们将创建一个电影评论应用程序,让用户查看和搜索电影。他们还可以登录并发表电影评论(图 1a、1b、1c)。

在这里插入图片描述

Figure 1a – Home Page with search functionality

图 1a - 带搜索功能的主页

在这里插入图片描述

Figure 1b – Movie page listing reviews

图 1b - 列出评论的电影页面

在这里插入图片描述

Figure 1c – Create Review

图 1c - 创建评论

Users can see the list of reviews in a Movie ’ s page and post/edit/delete the irown review if they are logged in. They will not be able edit/delete other ’ s reviews though. Through this app, we will learn a lot of concepts and solidify our Node.js, Express, Vue and MongoDB knowledge.

如果用户已登录,则可以查看电影页面中的评论列表,并张贴/编辑/删除自己的评论。但他们不能编辑/删除其他人的评论。通过这个应用程序,我们将学习到很多概念,并巩固我们的 Node.js、Express、Vue 和 MongoDB 知识。

We will first talk about MongoDB and how to host our database in the cloud using MongoDB Atlas. We will then create the backend of the app using Node.js and Express. Our server will interact with the database using the native MongoDB JavaScript library. After that, we will create the frontend with Vue and connect the frontend to the backend to complete our MEVN stack app. In the last chapter, we will deploy our Node, Express backend on Heroku, and Vue frontend on Netlify, to run both backend and frontend in the cloud.

首先,我们将介绍 MongoDB 以及如何使用 MongoDB Atlas 在云中托管我们的数据库。然后,我们将使用 Node.js 和 Express 创建应用程序的后台。我们的服务器将使用本地 MongoDB JavaScript 库与数据库交互。之后,我们将使用 Vue 创建前端,并将前端连接到后端,完成 MEVN 栈应用程序。在最后一章,我们将在 Heroku 上部署 Node、Express 后端,在 Netlify 上部署 Vue 前端,以便在云中运行后端和前端。

So, the overall structure of our app will be:

因此,我们应用程序的总体结构将是:

the ‘ M ’ of the stack, MongoDB will be hosted on MongoDB Atlas.

的 “M”,MongoDB 将托管在 MongoDB Atlas 上。

the ‘ E ’ and ‘ N ’ , Express and Node runs the backend server (Express being part of Node) and exposes an API. Hosted on Heroku.

E "和 “N”,Express 和 Node 运行后端服务器(Express 是 Node 的一部分)并公开 API。托管在 Heroku 上。

the ‘ V ’ , Vue frontend calls the API and renders the user interface on the client ’ s browser. Hosted on Netlify.

V",Vue 前端调用 API 并在客户端浏览器上渲染用户界面。由 Netlify 托管。

注意:为了照顾国内的开发习惯,这里我会使用Docker安装MongoDB,最终部署的时候使用Docker+Nginx的方式进行部署,而不会使用Heroku。

We will begin by going through the MongoDB database layer in the next chapter.

我们将在下一章开始介绍 MongoDB 数据库层。

说明

本文翻译自《Beginning MEVN Stack Development (MongoDB, Express, Vue, Node.js) (Greg Lim, Daniel Correa)》一书,加上了一些自己的理解。特别是代码部分,可能会大量的重写,练习等。

如果想要原版电子书可以留言。

如果涉及到侵权,请联系我删掉。

如果您有想要翻译的英文书籍,请联系我,我可以代为翻译。

如果您想要学习更多的编程知识,可以购买我的视频课,直播课,或者私教课。

如果您有想要开发的软件项目,可以联系我,我可以代为开发。

如果您是学生,有解决不了的编程问题,可以联系我,我可以代为解决。

如果您是程序员,在企业内有解决不了的难题,可以联系我,兴许我可以提供一些建议。

我是张大鹏,”Python私教“的创始人,全栈工程师,著有zdppy和zdpgo两个跨语言的全栈开发框架,如果您对我的框架感兴趣,可以联系我,需要说明的是,这两个框架不是开源的,需要付费购买,但是可以试用,保证能够提高您的开发效率。

其他… 生活不易,如果您有闲钱,麻烦打赏我一点吧,1块不嫌少,20刚刚好,100不嫌多,1000… 就想想吧~

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/590401.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Serverless Framework:开发无服务器应用的最佳工具 | 开源日报 No.133

serverless/serverless Stars: 45.6k License: MIT 该项目是 Serverless Framework,它是一个命令行工具,使用简单易懂的 YAML 语法部署代码和云基础设施以满足各种无服务器应用程序需求。支持 Node.js、Typescript、Python、Go 等多种编程语言&#xff…

【AI】人类视觉感知特性与深度学习模型(1/2)

目录 一、关于人类视觉感知 1.1 视觉关注 1.自上而下(Top-down)的视觉关注 ​编辑 2.自下而上(Bottom-up)的视觉关注 3.区别和记忆点 1.2 视觉掩盖 1.常见的视觉掩盖效应 2.恰可识别失真(Just Noticeable Dif…

概念解析 | Shapley值及其在深度学习中的应用

注1:本文系“概念解析”系列之一,致力于简洁清晰地解释、辨析复杂而专业的概念。本次辨析的概念是:Shapley值及其在深度学习中的应用。 1 背景介绍 在机器学习和数据分析中,理解模型的预测是非常重要的。尤其是在深度学习黑盒模型中,我们往往难以直观地理解模型的预测行为。为…

软件测试/测试开发丨接口测试之Postman 安装与使用

Postman 安装 官网下载地址 www.postman.com/downloads Postman 使用 发送get请求 新建请求 填写请求方式:GET 填写请求 URL: ceshiren.com/httpbin.ceshiren.com/get 填写请求参数: para_key para_value 发送 POST 请求 请求方式&…

1. Spring概述

概述 Spring 是一个开源框架Spring 为简化企业级开发而生,使用 Spring,JavaBean 就可以实现很多以前要靠 EJB 才能实现的功能。同样的功能,在 EJB 中要通过繁琐的配置和复杂的代码才能够实现,而在 Spring 中却非常的优雅和简洁。…

2023年总结(2023年1月1日至2023年12月31日)

前言 时间过得真快啊,一年又过去了。 从去年11月换了家公司后,工作就稳定多了,做的工作也是我喜欢做的工作——摄像头驱动,平时也挺轻松的,偶尔有事儿的时候会压力大点,加点班,其他都还好&…

4年微博热搜数据,一次拿走

又是新的一年了,从2020年开始,就养成了定时备份各大平台热搜数据的习惯,微博,知乎都在备份,今天给大家看一下从2020年到2023年的微博热搜数据情况 这是2022年的备份数据,每天的热搜数据一个文件&#xff0c…

2.2 设计FMEA步骤二:结构分析

2.2.1 目的 设计结构分析的目的是将设计识别和分解为系统、子系统、组件和零件,以便进行技术风险分析。其主要目标包括: 可视化分析范围结构化表示:方块图、边界图、数字模型、实体零件识别设计接口、交互作用和间隙促进顾客和供应商工程团队之间的协作(接口责任)为功能分…

计算机组成原理——中央处理器cpu21-40

18、某计算机的指令流水线由4个功能段组成,指令流经各功能段的时间(忽略各功能段之间的缓存时间)分别为90ns、80ns、70ns和60ns,则该计算机的CPU时钟周期至少是多少。A A、 90ns     B、 80ns C、 70ns     D、 60ns …

【日常聊聊】解决深度学习模型挑战:解释性与鲁棒性的平衡

🍎个人博客:个人主页 🏆个人专栏: 日常聊聊 ⛳️ 功不唐捐,玉汝于成 目录 前言 正文 1. 数据偏见: 介绍和解释: 解决方法: 2. 复制训练数据: 介绍和解决方法&am…

【形式语言与自动机/编译原理】CFG-->Greibach-->NPDA(2)

本文将详细讲解《形式语言与自动机》(研究生课程)或《编译原理》(本科生课程)中的上下文无关文法(CFG)转换成Greibach范式,再转成下推自动机(NPDA)识别语言是否可以被接受…

堆的应用:堆排序和TOP-K问题

上次才讲完堆的相关问题:二叉树顺序结构与堆的概念及性质(c语言实现堆 那今天就接着来进行堆的主要两方面的应用:堆排序和TOP-K问题 文章目录 1.堆排序1.1概念、思路及代码1.2改良代码(最初建立大堆用AdjustDow) 2. TO…

【AIGC-图片生成视频系列-5】I2V-Adapter:一种用于视频扩散模型的通用图像生成视频适配器

目录 一. 项目与贡献概述 二. 方法详解 a. 整体框架图 b. 帧相似性先验 三. 一般化图像生成动画结果 四. 基于个性化 T2I 模型的动画结果 五. 结合ControlNet动画结果 六. 项目论文和代码 七. 个人思考与总结 在快速发展的数字内容生成领域,焦点已从文本到…

Feign远程调用丢失请求头问题处理--异步任务执行远程请求线程丢失请求属性问题处理

在关于Feign远程调用丢失请求头问题处理中解决了远程调用发送请求丢失老请求中请求头的问题。A方法接收浏览器中的请求,B方法是A方法中嵌套方法用来发送Feign远程调用。如果B方法是在异步任务CompletableFuture.runAsync(()->{},Executor)中执行并启用线程池分配…

Linux:apache优化(7)—— 日志分割|日志合并

作用:随着网站访问量的增加,访问日志中的信息会越来越多, Apache 默认访问日志access_log单个文件会越来越大,日志文件体积越大,信息都在一个文件中,查看及分析信息会及不方便。 分割 实现方式&#xff1a…

2024.1.1 hive_sql 题目练习,开窗,行列转换

重点知识: 在使用group by时,select之后的字段要么包含在聚合函数里,要么在group by 之后 进行行转列,行转列的核心就是使用concat_ws函数拼接(分隔符,内容), -- 以及collect_list函数进行收集,list不去重, set去重无序 列转行,核心就是使用炸裂函数把东…

怎么设计一个简单又直观的接口?

文章目录 问题的开端为什么从问题开始?自然而来的接口 一个接口一件事情减少依赖关系使用方式要“傻” 小结 开放的接口规范是使用者和实现者之间的合约。既然是合约,就要成文、清楚、稳定。合约是好东西,它可以让代码之间的组合有规可依。但…

微服务(11)

目录 51.pod的重启策略是什么? 52.描述一下pod的生命周期有哪些状态? 53.创建一个pod的流程是什么? 54.删除一个Pod会发生什么事情? 55.k8s的Service是什么? 51.pod的重启策略是什么? 可以通过命令kub…

SpringIOC之support模块ContextTypeMatchClassLoader

博主介绍:✌全网粉丝5W,全栈开发工程师,从事多年软件开发,在大厂呆过。持有软件中级、六级等证书。可提供微服务项目搭建与毕业项目实战,博主也曾写过优秀论文,查重率极低,在这方面有丰富的经验…

作业--day39

定义一个Person类,私有成员int age,string &name,定义一个Stu类,包含私有成员double *score,写出两个类的构造函数、析构函数、拷贝构造和拷贝赋值函数,完成对Person的运算符重载(算术运算符、条件运算…