Nest-cli内容总结分享

前言


🤡一般我们使用框架开发创建项目的时候都使用脚手架来搭建项目,当然Nest也提供了对应的脚手架那就是Nest-cli,我们今天在《Nest通关秘籍》阅读的基础上来对这部分内容进行汇总一下。

一.Nest-cli命令总览


二.什么是Schema?


🫥Schema(模式):是用于描述数据结构、数据类型和数据关系的组织结构的概念,简单举个例子理解就是用来定义某种数据必须有某个字段,字段必须为某个类型,其实我们对这个东西使用的非常熟悉,比如我们在Vue对props传递的数据进行限制的方式就是Schema的方式。

js 复制代码
  props: {
    colorBar: {
      type: String, // 必须为string
      default: '#d72b18' // 默认为XXX
    },
  },

在Web开发中最常用的就是JSON Schema其实就是使用JSON格式对数据进行限制,如下,其余还有XML Schema等等。

json 复制代码
{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "type": "object",
  "properties": {
    "id": {
      "type": "integer"
    },
    "username": {
      "type": "string"
    },
    "email": {
      "type": "string",
      "format": "email"
    },
    "age": {
      "type": "integer"
    },
    "active": {
      "type": "boolean"
    }
  },
  "required": ["id", "username", "email"]
}

三.什么是controller-service-module-dto...


🤡Module(模块)是应用程序的基本组织单位,它封装了相关的功能和组件。每个模块都有自己的作用域,包含了控制器、服务、提供者等。模块可以帮助我们将应用程序的不同功能划分为独立的组件,以便更好地管理和组织代码。

🫥Controller(控制器)是处理HTTP请求和响应的组件。它包含了一系列的路由处理器(路由处理函数),用于处理特定的URL请求,并返回相应的HTTP响应。控制器负责接收请求、处理业务逻辑、调用相应的服务和返回响应。

🥱Service(服务)是处理业务逻辑的组件。它包含了应用程序的核心功能和业务规则的实现。服务被控制器调用,用于执行特定的任务和提供相应的功能。服务可以封装复杂的业务逻辑,并与数据库、外部服务等进行交互。

🐻DTO(数据传输对象)是用于在不同层之间传输数据的对象。DTO通常用于在控制器和服务之间传递数据,以及在服务和数据库之间传递数据。DTO可以在不同层之间定义数据的结构和约束,以确保数据的正确性和一致性。


💡Tips:在MVC架构中,模块的概念通常不是MVC架构的核心概念,Controller(控制器):在MVC架构中,控制器属于控制层(Controller Layer),Service(服务):在MVC架构中,服务通常属于模型层(Model Layer)

四.总结与扩展


😎在nest-cli这一章节基本涉及的问题就这么多,但是纸上得来终觉浅,绝知此事要躬行,还是要亲手试试看的,在服务端的架构模型是mvc我们来看下它各层的内容。

  1. Model(模型):代表应用程序的数据层。模型用于表示数据的结构、业务逻辑以及与数据相关的操作和操作。它负责处理数据的存储、读取、更新和删除,以及与数据相关的业务规则。
  2. View(视图):代表应用程序的用户界面。视图负责将模型中的数据可视化,并向用户展示。它负责呈现数据、接收用户输入,并将用户的操作传递给控制器。
  3. Controller(控制器):代表应用程序的控制逻辑。控制器负责接收用户的输入、处理业务逻辑,并根据需要更新模型和视图。它作为模型和视图之间的协调者,根据用户的操作调用适当的模型方法来更新数据,并选择适当的视图进行渲染。

🐻Nest-cli的相关内容就到这里啦,让我们再接再厉,共同进步~

相关推荐
用户8508692761515 分钟前
Rust系统编程在任务调度中的踩坑与优化之路
后端
LiaCode1 小时前
别让 AI 把仓库写成“代码平行宇宙”:从 Deslop 看生成前查重
前端·后端·github
啵啵啵鱼1 小时前
DS-顺序表
java·数据结构·笔记·后端·链表·obsidian
回家吃饭去吧1 小时前
AI Agent Function Calling / Tool Use 深度解析
后端
大黄评测1 小时前
Oracle 锁等待、会话阻塞故障复盘:生产事故排查步骤
后端
大勇前进1 小时前
Oracle 慢 SQL 优化避坑:索引建了为什么依然走全表扫描
后端
良在掘金542231 小时前
匹配服排行榜位置原子交换与锁粒度设计
后端
用户233376852182 小时前
Docker部署Kafka排障实录
后端
程序员cxuan2 小时前
GPT - 6 Astra 的使用焚诀
人工智能·后端·程序员
南雨北斗2 小时前
Tp6 + Nginx 配置文件上传目录为public同级目录(宝塔面板)
后端