آموزش تسلط بر Nest.js: ساخت اپلیکیشن‌های مقیاس‌پذیر با فریم‌ورک Nest.js - آخرین آپدیت

دانلود Mastering Nest.js: Build Scalable Applications with Mastery in Nest.js Framework

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

توضیحات

این دوره درباره چیست؟

Nest.js یک فریم‌ورک قدرتمند برای ساخت اپلیکیشن‌های بک‌-اند (Back-end) مقیاس‌پذیر و کارآمد است. این دوره با معرفی نحوه راه‌اندازی، ساختار پروژه و مفاهیم بنیادی مانند کنترلرها (Controllers) و پایپ‌ها (Pipes) آغاز می‌شود. در ادامه، ویژگی‌های پیشرفته از جمله میان‌افزارها (Middleware)، گاردها (Guards) و اینترسپتورها (Interceptors) را بررسی خواهید کرد تا مهارت‌های لازم برای مدیریت عملکرد و امنیت اپلیکیشن را به دست آورید. همچنین یاد می‌گیرید چگونه مدیریت پایگاه داده را با استفاده از MySQL و MongoDB و ابزارهای TypeORM و Mongoose ادغام کرده و داده‌ها را به‌طور یکپارچه مدیریت کنید. در طول مسیر، مهارت‌های خود را در یک پروژه عملی به نام MyStore برای پیاده‌سازی عملیات CRUD، احراز هویت و مدیریت نشست‌ها (Session) تمرین می‌کنید. در پایان این دوره، شما آماده طراحی و استقرار اپلیکیشن‌های با کارایی بالا و قابل نگهداری خواهید بود. این دوره برای توسعه‌دهندگان نرم‌افزار، مهندسان بک‌-اند و علاقه‌مندان به تکنولوژی که قصد تسلط بر Nest.js را دارند، ایده‌آل است.

این دوره توسط Packt Publishing تولید شده است و ما خوشحالیم که این آموزش را در کتابخانه خود میزبانی می‌کنیم.

اهداف دوره

در پایان این دوره چه توانایی‌هایی کسب خواهم کرد؟

  • پیکربندی و مدیریت موثر اپلیکیشن‌های مقیاس‌پذیر Nest.js.
  • ساخت و پیاده‌سازی کنترلرها، میان‌افزارها و اینترسپتورها.
  • ادغام و مدیریت یکپارچه پایگاه‌های داده MySQL و MongoDB.
  • توسعه جامع عملیات CRUD در یک پروژه عملی.
  • پیاده‌سازی راهکارهای قدرتمند برای احراز هویت و مدیریت نشست‌ها.

مخاطبان

این دوره برای چه کسانی است؟

  • توسعه‌دهندگان نرم‌افزار
  • مهندسان بک‌-اند (Back-end Engineers)
  • علاقه‌مندان به مباحث فنی و برنامه‌نویسی

پیش‌نیازها

قبل از شروع این دوره چه چیزهایی باید بدانم؟

  • درک مفاهیم بنیادی JavaScript یا TypeScript
  • آشنایی اولیه با Node.js


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

مقدمه Introduction

  • راه‌اندازی پروژه Setting up the project

  • مقدمه‌ای بر Nest.js Introduction to Nest.js

  • درک ساختار پروژه Understanding project structure

1. مبانی Nest.js 1. Nest.js Fundamentals

  • مقایسه دکوراتورهای @HttpCode و @Res @HttpCode vs. @Res decorator

  • مبانی کنترلر (هندلر @Delete) Controller fundamentals (@Delete handler)

  • درک مفاهیم کنترلرها Understanding controllers

  • مبانی کنترلر (هندلر @Put) Controller fundamentals (@Put handler)

  • مبانی کنترلر (هندلر @Get) Controller fundamentals (@Get handler)

  • شیء پاسخ (Response object) Response object

  • مبانی کنترلر (هندلر @Post) Controller fundamentals (@Post handler)

  • مبانی کنترلر (هندلر @Post) بخش دوم همراه با ماژول‌ها Controller fundamentals (@Post handler), part 2 with modules

  • مبانی کنترلر (هدرها) Controller fundamentals (Headers)

  • مبانی کنترلر (دریافت پارامترها) Controller fundamentals (fetching params)

  • مبانی کنترلر (هندلر @Patch) Controller fundamentals (@Patch handler)

  • شیء درخواست (Request object) Request object

  • دریافت کوئری‌ها Fetching queries

  • وضعیت پاسخ HTTP HTTP response status

2. کار با پایپ‌ها (Pipes) 2. Working with Pipes

  • اعتبارسنجی فیلد با استفاده از @IsEnum() Validating field using @IsEnum() validator

  • پایپ‌های داخلی (ParseFloatPipe) Built-in pipes (ParseFloatPipe)

  • ساخت یک پایپ سفارشی Creating a custom pipe

  • اعتبارسنجی تاریخ‌ها در Nest.js Validating dates in Nest.js

  • درک ArgumentMetadata (metadata.data) Understanding ArgumentMetadata (metadata.data)

  • پایپ‌های داخلی (ParseUUIDPipe) Built-in pipes (ParseUUIDPipe)

  • مقدمه‌ای بر پایپ‌ها Introduction to pipes

  • پایپ‌های داخلی (ParseIntPipe) Built-in pipes (ParseIntPipe)

  • پیاده‌سازی پایپ‌های سراسری (Global Pipes) Implementing global pipes

  • اعتبارسنجی فیلدهای خالی Validating empty fields

  • درک ArgumentMetadata (metadata.type) Understanding ArgumentMetadata (metadata.type)

  • پایپ‌های داخلی (ValidationPipe) Built-in pipes (ValidationPipe)

  • درک ArgumentMetadata (metadata.metatype) Understanding ArgumentMetadata (metadata.metatype)

  • اعتبارسنجی طول فیلد Validating field length

  • پایپ‌های داخلی (ParseBooleanPipe) Built-in pipes (ParseBooleanPipe)

  • اعتبارسنجی الگوی Regex Validating regex pattern

  • پایپ‌های داخلی (ParseArrayPipe) Built-in pipes (ParseArrayPipe)

  • اعتبارسنجی فیلدهای اختیاری Validating optional fields

  • پیام‌های اعتبارسنجی سفارشی Custom validation messages

  • تمرین: پایپ سفارشی (مدیریت آرگومان‌های type مختلف) Assignment: Custom pipe (handling different "type" arguments)

3. میان‌افزارهای Nest.js 3. Nest.js Middleware

  • اعمال میان‌افزارهای سراسری Applying global middlewares

  • میان‌افزار مسیرهای مبتنی بر کنترلر Controller-driven route middleware

  • ثبت یک میان‌افزار Registering a middleware

  • تمرین: میان‌افزار رمزنگاری رمز عبور Assignment: Password encryption middleware

  • استثنا کردن مسیرها Excluding routes

  • درک میان‌افزارهای تابعی (Functional Middleware) Understanding functional middleware

  • مدیریت Wildcards در مسیرها Handling route wildcards

  • اعمال چندین میان‌افزار Applying multiple middlewares

  • پیاده‌سازی میان‌افزار Implementing middleware

  • تمرین: بررسی Content Type با میان‌افزار Assignment: Checking Content-Type with middleware

  • مقدمه‌ای بر میان‌افزارهای Nest Introduction to Nest middlewares

  • میان‌افزار مخصوص هر مسیر Route-specific middleware

  • میان‌افزار برای هندلرهای خاص مسیر Middleware for specific route handlers

4. گاردهای Nest.js 4. Nest.js Guards

  • محدود کردن دسترسی به کنترلر با گارد Limiting controller access with guard

  • اعمال نقش (Role) برای هندلرهای خاص Applying role for specific handlers

  • درک ExecutionContext Understanding ExecutionContext

  • اعمال گاردهای سراسری Applying global guards

  • تمرین: احراز هویت با API key Assignment: API key authorization

  • دسترسی به آرگومان‌ها با getArgs() Accessing arguments with getArgs()

  • مقدمه‌ای بر گاردها Introduction to guards

  • درک مفاهیم گارد Understanding guard

  • اعمال چندین گارد Applying multiple guards

  • درک متد switchToHttp() Understanding switchToHttp() method

  • تعریف متادیتای سفارشی Defining custom metadata

  • اعمال چندین نقش Applying multiple roles

  • تنظیم متادیتای سفارشی: روشی بهتر Setting custom metadata: A better way

5. اینترسپتورهای Nest.js 5. Nest.js Interceptors

  • نگاشت استثناها (Exception mapping) Exception mapping

  • تمرین: تغییر هدرهای درخواست Assignment: Modifying request headers

  • احراز هویت و تعیین سطح دسترسی Authentication and authorization

  • مقدمه‌ای بر اینترسپتورها Introduction to interceptors

  • اعتبارسنجی داده‌ها با اینترسپتور Data validation with interceptor

  • تمرین: مخفی کردن اطلاعات حساس Assignment: Hiding sensitive information

  • تمرین: تغییر شکل داده‌های پاسخ Assignment: Transforming response data

  • درک مفاهیم اینترسپتور Understanding interceptor

  • اعمال اینترسپتورهای سراسری Applying global interceptors

6. استفاده از Nest.js با MySQL 6. Nest.js with MySQL

  • درج داده‌های محصول (CRUD) Inserting product data (CRUD)

  • دریافت داده‌های محصول (CRUD) Fetching the product data (CRUD)

  • حذف رکورد محصول (CRUD) Deleting product record (CRUD)

  • به‌روزرسانی رکورد محصول (CRUD) Updating product record (CRUD)

  • ساخت Entity با TypeORM Creating entity with TypeORM

  • اتصال به پایگاه داده MySQL با TypeORM Connecting to MySQL database using TypeORM

7. پروژه عملی: ساخت اپلیکیشن MyStore 7. Practical Application: Creating a MyStore App

  • رندر کردن قالب در سرور Rendering template on server

  • ساخت رابط کاربری صفحه اصلی Creating home interface

  • رندر شرطی: عدم یافتن محصول Conditional rendering: No product found

  • پیکربندی مسیر افزودن محصول Configuring add product route

  • ساخت نوار ناوبری (Navbar) با includes Creating navbar with "includes"

  • رابط کاربری و عملکرد: ویرایش محصول Interface & functionality: Edit product

  • پیکربندی مسیر ویرایش محصول Configuring edit product route

  • مقدمه‌ای بر اپلیکیشن MyStore Introduction to MyStore application

  • ساخت رابط کاربری افزودن محصول Creating "add product" interface

8. اتصال قالب‌ها به MySQL 8. Attaching Templates to MySQL

  • به‌روزرسانی محصول Updating the product

  • افزودن محصول به پایگاه داده، بخش دوم Adding product to database, part 2

  • افزودن محصول به پایگاه داده، بخش اول Adding product to database, part 1

  • حذف محصول Deleting the product

  • دریافت لیست محصولات Fetching the products

9. اپلیکیشن MyStore: احراز هویت و کوکی‌های نشست 9. MyStore: Authentication and Session Cookie

  • اعتبارسنجی درخواست با میان‌افزار Validating request with middleware

  • طراحی فرم ثبت‌نام Designing the sign-up form

  • تنظیم مسیر ثبت‌نام Setting up the sign-up route

  • پیاده‌سازی قابلیت نمایش/مخفی‌سازی رمز عبور Implementing show/hide password functionality

  • بهینه‌سازی ذخیره‌سازی نشست (Session Storage) Optimizing session storage

  • اعتبارسنجی رمز عبور Validating password

  • ثبت کاربر در پایگاه داده Registering user to the database

  • مقدمه بخش Section introduction

  • رندر شرطی با توکن Conditional rendering with token

  • پیکربندی Express Session Configuring Express-Session

  • اعتبارسنجی اطلاعات ورود Validating login credentials

  • تخریب نشست: خروج از حساب Destroying the session: Logout

  • ذخیره نشست‌ها در MySQL Storing sessions in MySQL

  • اعتبارسنجی کاربر و ارسال کوکی Validating user and sending cookie

  • پیاده‌سازی خروج Implementing logout

  • نهایی‌سازی اپلیکیشن MyStore Finalizing MyStore application

  • خواندن کوکی Reading a cookie

  • هش کردن رمز عبور هنگام ثبت‌نام Hashing the password on sign-up

  • پیکربندی صفحه ورود Configuring login page

  • پیاده‌سازی توکن JWT Implementing JWT token

  • رندر DOM بر اساس وضعیت ورود Rendering DOM based on login status

  • ارسال و خواندن کوکی نشست Sending and reading session cookie

10. استفاده از Nest.js با MongoDB و Mongoose 10. Nest.js With MongoDB and Mongoose

  • اتصال به پایگاه داده MongoDB Connecting to MongoDB database

  • ساخت و ذخیره محصول در MongoDB Create and save product to MongoDB

  • ساخت یک Schema Creating a schema

  • به‌روزرسانی یک سند (Document) در MongoDB Updating a document in MongoDB

  • حذف یک سند از MongoDB Deleting a document from MongoDB

  • ثبت Schema Registering the schema

  • دریافت سندها از MongoDB Fetching documents from MongoDB

11. اپلیکیشن MyStore با MongoDB و Mongoose 11. MyStore With MongoDB and Mongoose

  • تزریق (Inject) اسکیمای محصول Injecting the product schema

  • تزریق اسکیمای کاربر Injecting the user schema

  • اتصال MyStore به پایگاه داده MongoDB Connecting MyStore with MongoDB database

  • ساخت ذخیره‌ساز نشست MongoDB Creating MongoDB session store

  • ساخت اسکیمای محصول Creating product schema

  • ساخت اسکیمای کاربر Creating user schema

نمایش نظرات

آموزش تسلط بر Nest.js: ساخت اپلیکیشن‌های مقیاس‌پذیر با فریم‌ورک Nest.js
جزییات دوره
8h 49m
127
(آخرین آپدیت)
506
- از 5
دارد
دارد
دارد
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Packt Publishing Packt Publishing

دانش فنی در حرکت