آموزش بوت‌کمپ Nest JS - راهنمای کامل توسعه‌دهندگان - آخرین آپدیت

دانلود The Nest JS Bootcamp - Complete Developer Guide

نکته: ممکن هست محتوای این صفحه بروز نباشد ولی دانلود دوره آخرین آپدیت می باشد.
نمونه ویدیوها:
توضیحات دوره:

ساخت و تست بک‌اند REST API های آماده برای پروداکشن با NestJS، Prisma و PostgreSQL

با NestJS API های آماده برای پروداکشن بسازید

پیاده‌سازی قابلیت‌های پیچیده مانند احراز هویت و مجوزدهی در NestJS

نوشتن تست برای سرویس‌ها و کنترلرهای NestJS

آشنایی با تمام موجودیت‌های مختلف NestJS

پیش‌نیازها:

  • دانش اولیه جاوا اسکریپت
  • درک بنیادین از API های REST

من به عنوان کسی که به طور روزانه از NestJS در محیط کار و پروژه‌های شخصی استفاده می‌کنم، مشتاقم تا تمام تجربیاتم را در این دوره با شما به اشتراک بگذارم. این دوره جامع‌ترین دوره NestJS در یودمی است و اگر چنین فکری ندارید، می‌توانید درخواست بازپرداخت کامل دهید.

NestJS یک فریم‌ورک پیشرفته Node.js است که به ما امکان می‌دهد برنامه‌های بک‌اند قابل اعتماد، مقیاس‌پذیر و قابل نگهداری را با سهولت باورنکردنی بسازیم.

در این دوره، دو برنامه حرفه‌ای خواهید ساخت. اولین مورد یک برنامه مدیریت مخارج (Expense App) خواهد بود، جایی که شما موارد زیر را یاد خواهید گرفت:

  • مبانی NestJS
  • موجودیت‌های مختلف NestJS مانند کنترلرها، سرویس‌ها، اینترسپتورها، پایپ‌ها و ماژول‌ها
  • بهترین شیوه‌های NestJS

در پروژه دوم، برنامه املاک (Realtor App)، ما در مورد موارد زیر خواهیم آموخت:

  • تعامل با پایگاه داده PostgreSQL با استفاده از ORM (Prisma)
  • ایجاد مدل پایگاه داده و انجام عملیات CRUD
  • نحوه احراز هویت و شناسایی کاربر
  • نحوه اعطای مجوز دسترسی به نقاط پایانی خاص برای کاربران مشخص
  • نحوه نوشتن صحیح تست‌های خودکار برای سرویس‌ها و کنترلرهای ما
  • نحوه ایجاد دکوراتورهای پارامتر سفارشی
  • آشنایی با موجودیت‌های پیشرفته NestJS مانند گاردها و اینترسپتورها

من به این دوره بسیار افتخار می‌کنم و امیدوارم که از آن لذت ببرید. اگر در هر زمانی نیاز به کمک داشتید، لطفاً به من در یودمی پیام دهید تا همیشه به سوالات شما پاسخ دهم.


سرفصل ها و درس ها

مقدمه Introduction

  • مقدمه Introduction

  • API REST چیست What is a REST API

  • تنظیمات کار Setup Work

ایجاد مسیرها با کنترلرها Creating Routes with Controllers

  • مرور کلی برنامه App Overview

  • Nest CLI The Nest CLI

  • کار با کنترلرها Working with Controllers

  • به روز رسانی مسیر Updating the Route Path

  • اضافه کردن پارامترهای مسیر Adding Path Parameters

  • اضافه کردن نقطه پایانی POST، PUT و DELETE Adding a POST, PUT and DELETE Endpoint

  • کمی در مورد TypeScript A Little on TypeScript

  • دسترسی به پارامترهای مسیر با دکوراتورهای پارامتر Accessing Path Parameters With Param Decorators

  • دسترسی به پارامترهای مسیر چندگانه Accessing Multiple Path Parameters

  • دسترسی به بدنه درخواست Accessing the Request Body

  • تکمیل منطق به‌روزرسانی Completing the Update Logic

  • تکمیل منطق حذف Completing the Delete Logic

منطق تجاری باید در سرویس‌ها باشد Business Logic Should Be In Services

  • رسیدگی به برخی مشکلات Addressing Some Issues

  • ایجاد اولین سرویس ما Creating Our First Service

  • تزریق سرویس ما به کنترلر Injecting Our Service Into the Controller

  • ایجاد بقیه سرویس‌ها Creating the Rest of the Services

  • تست دستی برای دیدن اینکه آیا همه چیز هنوز کار می‌کند Manual Testing to See if Everything Still Works

افزودن اعتبارسنجی با Pipes و DTOs Adding Validations with Pipes and DTOs

  • چیزهایی که باید اعتبارسنجی کنیم Things We Need to Validate

  • اعتبارسنجی پارامتر مسیر با Pipe Validating the Path Param With a Pipe

  • استفاده از Pipe اعتبارسنجی Enum Utilizing an Enum Validation Pipe

  • اعتبارسنجی بدنه با DTOs Validating the Body With DTOs

  • اختیاری کردن ویژگی‌ها Making Properties Optional

  • فهرست سفید کردن ویژگی‌های ناخواسته Whitelisting Undesired Properties

تبدیل پاسخ با Interceptors Transforming the Response With Interceptors

  • پروژه پاسخ بهتر A Better Response Project

  • ایجاد DTO پاسخ Creating a Response DTO

  • بسته‌بندی شیء پاسخ با DTO Wrapping the Response Object With the DTO

  • اضافه کردن Interceptor Serializer Adding a Serializer Interceptor

  • تبدیل یک ویژگی با دکوراتور Expose Transforming a Property With the Expose Decorator

  • Interceptor چیست What is an Interceptor

  • ایجاد Interceptor سفارشی Creating a Custom Interceptor

سازماندهی فایل‌ها با Modules Organizing Files with Modules

  • اضافه کردن یک نقطه پایانی جدید Adding a New Endpoint

  • انتقال منطق گزارش ما به دایرکتوری خودش Moving Our Report Logic Into its Own Directory

  • تزریق سرویس‌ها از یک ماژول به ماژول دیگر Injecting Services From One Module to Another

  • تکمیل نقطه پایانی خلاصه Completing the Summary Endpoint

کار با پایگاه‌های داده Working With Databases

  • مرور کلی برنامه App Overview

  • ایجاد یک پروژه Nest جدید Creating a New Nest Project

  • ایجاد پایگاه داده Postgres در ابر Creating a Postgres Database in the Cloud

  • معرفی Prisma (یک ORM NodeJS) Introducing Prisma (A NodeJS ORM)

  • دانلود Prisma در پروژه Nest ما Downloading Prisma Into Our Nest Project

  • تعریف اسکیمای داده ما Defining Our Data Schema

  • بیشتر در مورد اسکیمای پایگاه داده More on Database Schemas

  • تعریف روابط مدل Defining Model Relationships

  • روابط بیشتر... More Relationships...

  • انجام یک مهاجرت Performing a Migration

پیاده‌سازی احراز هویت Implementing Authentication

  • مقدمه‌ای بر احراز هویت Introduction to Authentication

  • بحث در مورد منطق ثبت نام Discussing the Signup Logic

  • اعتبارسنجی ورودی کاربر Validating the User Input

  • اعتبارسنجی ایمیل کاربر Validating the User's Email

  • رمزهای عبور را چگونه ذخیره کنیم؟ How Should We Store Passwords?

  • هش کردن رمز عبور ما Hashing Our Password

  • ذخیره کاربر در پایگاه داده Storing the User in the Database

  • چه چیزی باید برگردانیم؟ What Should We Return?

  • برگرداندن یک توکن وب JSON Returning a JSON Web Token

  • پیاده‌سازی منطق ورود Implementing the Signin Logic

  • اضافه کردن یک نقطه پایانی کلید محصول Adding a Product Key Endpoint

  • اعتبارسنجی افرادی که سعی در ثبت نام به عنوان مشاور املاک یا مدیر دارند Validating Individuals That Try to Signup as Realtors or Admins

اضافه کردن منطق تجاری ما Adding Our Business Logic

  • ایجاد تمام نقاط پایانی ما Creating All of Our Endpoints

  • فراخوانی تمام خانه‌ها Fetching All Homes

  • تعریف DTO پاسخ Define the Response DTO

  • دسترسی به پارامترهای پرس و جو از درخواست Accessing Query Parameters From the Request

  • فیلتر کردن برای خانه‌های خاص Filtering For Specific Homes

  • اعتبارسنجی بدنه خانه Validating the Home Body

  • ایجاد یک خانه جدید Creating a New Home

  • به روز رسانی یک خانه Updating a Home

  • حذف یک خانه Deleting a Home

شناسایی کاربر Identifying the User

  • مشکلی در تنظیمات فعلی ما An Issue With Our Current Setup

  • ایجاد یک دکوراتور پارامتر سفارشی Creating a Custom Param Decorator

  • چگونه به شیء کاربر دسترسی پیدا می‌کنیم How Are We Accessing the User Object

  • ایجاد یک Interceptor کاربر Creating a User Interceptor

  • تکمیل پیاده‌سازی دکوراتور سفارشی Wrapping up the Custom Decorator Implementation

  • اطمینان از اینکه مشاور املاکی که خانه را ایجاد کرده می‌تواند آن را حذف یا به‌روزرسانی کند Ensuring the Realtor that Created the House Can Delete or Update it

  • ایجاد نقطه پایانی Me Creating the Me Endpoint

پیاده‌سازی مجوز Implementing Authorization

  • نیاز به مجوز The Need for Authorization

  • این هدف نهایی است This is the End Goal

  • مقدمه‌ای بر Guards An Introduction to Guards

  • شبه کد منطق Guard ما Pseudo-Coding Our Guard Logic

  • ارسال داده‌های مسیر به عنوان فراداده Passing Route Data as Metadata

  • تأیید توکن JWT Verifying the JWT Token

  • دسترسی به کاربر از پایگاه داده Accessing the User From the DB

  • تست دستی Some Manual Testing

  • استفاده سراسری از Guard Globally Utilizing the Guard

چند نقطه پایانی بیشتر A Few More Endpoints

  • به دو نقطه پایانی دیگر نیاز داریم We Need Two More Endpoints

  • نقطه پایانی پرس و جو درباره خانه The Inquire About Home Endpoint

  • نقطه پایانی بازیابی پیام The Message Retrieval Endpoint

  • ارسال اطلاعات مفیدتر Send Back More Useful Info

نوشتن تست‌های خودکار Writing Automated Tests

  • مقدمه‌ای بر تست خودکار An Intro to Automated Testing

  • ساختار یک فایل تست The Structure of a Test File

  • نوشتن اولین تست‌های ما Writing Our First Tests

  • تست اینکه آیا یک خطا ایجاد شده است Testing Whether an Error Was Thrown

  • تست سرویس ایجاد Testing the Create Service

  • ما همچنین باید کنترلر را تست کنیم We Should Also Test the Controller

  • اولین تست کنترلر ما Our First Controller Test

  • تست‌های بیشتر کنترلر More Controller Tests

  • یک تست کنترلر دیگر One More Controller Test

نمایش نظرات

آموزش بوت‌کمپ Nest JS - راهنمای کامل توسعه‌دهندگان
جزییات دوره
9.5 hours
97
Udemy (یودمی) Udemy (یودمی)
(آخرین آپدیت)
1,656
4.6 از 5
ندارد
دارد
دارد
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Laith Harb Laith Harb

مهندس نرم افزار

Laith Harb Laith Harb

مهندس نرم افزار