Nest.js - Learn Nest.js In Details
خلال هذا الكورس هتتعلم بالتفصيل المكونات الاساسية ل ( Nest.js Framework ) ، الدورة متعمقة في شرح جميع المكونات الخاصة ب ( Nest.js ) مع شرح أمثله عملية
باقة الباك اند
كورس مكتمل
لمن هذا الكورس ؟
-
لمطوري ال Node.js المهتمين ببناء تطبيقات باستخدام Nest.js
-
للمهتمين بتعلم مجال ال ( Back-End ) باستخدام Nest.js
-
للمهتمين باستخدام ال Typescript في بناء مشاريعهم
24 ساعة
مستوى متوسط
متطلبات الالتحاق بالكورس
-
معرفة جيدة ب (Node.js) و (Express.js)
-
علي الأقل قمت ببناء مشروع باستخدام (Node.js) و (Express.js)
-
معرفة جيدة بلغة (Typescript)
Nest.js - Learn Nest.js Framework In Details
خلال هذا الكورس هتتعلم بالتفصيل المكونات الاساسية ل ( Nest.js Framework ) ، الدورة متعمقة في شرح جميع المكونات الخاصة ب ( Nest.js ) مع شرح أمثله عملية
ماذ سوف تتعلم في هذه الدورة
-
هتعرف ايه هي ( Nest.js Framework ) وإيه الفوائد اللي وفرتها لينا
-
هنتعرف علي ال ( Building Blocks ) اللي ( Nest.js ) وفرتها لكل جزء من اجزاء ال ( Request Response Cycle )
-
هتتعلم ال ( Validation ) شغال ازاي داخل ( Nest.js ) عشان تقدر تعمل ( Validate ) لل ( Data )
-
هتتعلم ال ( Nest Built-in Interceptor ) وكمان ازاي تعمل ال ( Custom Interceptor ) وال ( Use Cases ) اللي بتستخدم فيها ال (Interceptor)
-
هنشوف ال ( Dependency Injection ) شغال ازاي داخل ( Nest.js )
-
هتتعلم ال ( Nest Providers ) بالتفصيل وهتتعرف علي أنواعهم وال Use Cases اللي بنستخدمها فيه مع تطبيق مثال عملي
-
هتتعرف علي ال ( Scopes ) الخاصة ب ( Nest Building Blocks )
-
هتتعلم عن ال ( Exception Filters ) وازاي ال (Layer) دي بتتعامل مع ال ( Exceptions ) اللي بتحصل داخل التطبيق
-
هتتعلم عن ال ( Guards ) وال ( Middlewares ) وال ( Use Cases ) اللي بتستخدمها فيهم
-
هتتعلم عن ال ( App Configurations ) وهنشوف ازاي ( Nest ) بتوفر ( Config Service ) جاهزة نقدر نستخدمها عشان نوصل لل ( App Configurations )
-
هنتعلم عن ال ( Logging ) وهنشوف ازاي ( Nest ) بتوفر ال( Logging Service ) جاهزة نقدر نستخدمها
-
هنربط ( Nest App ) بالداتا بيز سواء كان (Relational Database like PostgresSQL ) او Non-Relational Database Like MongoDB بمثال عملي
محتويات الكورس
- 01.What is Nestjs Framework (11:00)
- 1.Course Goal (7:52)
- 2.Install Nestjs CLI and Generate our First Nest Application (7:57)
- 3.First Look at Nestjs Application Architecture (16:34)
- 4.Http Implementation Inside Nestjs (5:08)
- 5.What is the Nestjs Parts (2:42)
- 6.What is the Root Module (11:03)
- 7-Request Response Cycle (9:09)
- 8.Create our First Controller (13:02)
- 9-What is Resource Controller (11:47)
- 11-Route Parameters (6:51)
- 10-Request Object (4:59)
- 12-Request Body (3:42)
- 13-Status Code and Response (10:55)
- 14-Request Payload (DTO) (6:05)
- 15-Update DTO (7:49)
- 16-Find, FindOne and Create Logic (11:28)
- 17-Update and Delete Logic (11:46)
- 18-Section Summary (3:43)
- 28-Move User Logic To User Service Layer (8:43)
- 27-Why We Need a Service Layer (5:29)
- 29-Refactor User Controller To Use User Service (4:49)
- 30-Explain Dependency Injection and IoC (12:15)
- 31-How Nest Use Dependency Injection And IoC (13:07)
- 32-Do a Manual Test After Moving Logic To Service (2:15)
- 33-Introduction To Practical Dependency Injection Example (6:14)
- 34-Create Project Modules (11:22)
- 35-Implement Dependency Between Engine And Battery Modules (11:43)
- 36-Implement Dependency Between Conditioner And Engine Modules (6:22)
- 37-Implement Car Dependencies (8:55)
- 38-Section Summary (6:00)
- 39-What Is The Standard Provider (9:52)
- 40-Why We Need a Custom Provider And It's Types (2:44)
- 41-Value Provider (10:17)
- 42-Non-class-based Provider Token (5:27)
- 43-Class Providers (3:58)
- 44-Factory Provider (14:19)
- 45-Alias Providers (6:13)
- 46-Non-Service Based Providers (3:29)
- 47-Export Custom Provider (3:45)
- 48-Asynchronous Providers (8:34)
- 49-Default Provider Scope (9:11)
- 50-TransientProvider Scope (6:25)
- 51-Request Provider Scope (6:31)
- 52-Section Summary (3:01)
- 53-Interceptor overview and explain the problem (6:52)
- 54-User Response DTO Part-1 (7:36)
- 55-User Response DTO Part-2 (5:03)
- 56-Add built-in interceptor (8:26)
- 57-Transform property using expose decorator (8:27)
- 58-More about interceptors (6:51)
- 59-Custom interceptor real use case -1 (23:51)
- 60-Custom interceptor use case -2 (26:45)
- 61-Scopes of blocks (16:07)
- 62-Section-5 Summary (8:37)
- 63-What is exception filter (11:19)
- 64-Throwing standard exceptions (4:20)
- 65-Some Types of Exceptions and Custom http exceptions (9:27)
- 66-Deep understanding for global built-in exception filter (4:10)
- 67-Use Cases For Exceptions Filters (5:10)
- 68-Full control over the exception filter layer (19:35)
- 69-Exception filter example recap (5:29)
- 70-Arguments host (5:30)
- 71-Filters Binding (2:20)
- 72-Use exception filter to catch everything (3:12)
- 73-inherits the built-in global filter (5:18)
- 74-Section-6 summary (2:16)
- 75-What is Guard (11:49)
- 76-Guard Use Cases (5:48)
- 77-Implement Authentication Use Case (22:34)
- 78-Explain Another Use Case For Using Guards (6:06)
- 79-Use SetMetadata To Provide Metadata For Handler (10:52)
- 80-Another Use Case For Using Guards (12:17)
- 81-What is Middleware (11:35)
- 82-Nest Class Middleware VS Function Middleware (11:47)
- 83-Binding Nest Middleware (14:31)
- 84-Excluding Routes (6:05)
- 85-More About Middleware (11:33)
- 86-section-7 Summary (9:10)
- 87-Why we need different app configurations (9:07)
- 88-Built-in Nest Config Module (7:06)
- 89-Custom env file path (13:27)
- 90-Disable env variables and use the config module global (3:55)
- 91-Custom Configuration Files (13:42)
- 92-Use Config service to access env variables (7:31)
- 93-Benefit of isGlobal option (3:18)
- 94-Explain expandVariables option (3:28)
- 95-prevent accessing a config property that does not exist (10:35)
- 96-Add env files to .gitignore (8:11)
- 97-What is Logging (3:33)
- 98-Logging Use cases (6:30)
- 99-Implement logging using built-in Logger class (15:04)
- 100-Other tools for logging (7:05)
- 101-Section-8 summary (4:00)
- 102-Introduction To Integration With Database (3:59)
- 103-Types Of Databases (5:46)
- 104-When We Use Relational and Non-relational Database (8:57)
- 105-Places To Setup Database (5:43)
- 106-We Will Using Docker (8:57)
- 107-Benefits Of Using Docker (6:02)
- 108-Install Docker Desktop (9:49)
- 109-Nest is Database Agnostic (11:55)
- 110-Clone the DB Starter Project (6:09)
- 111-Explain the Starter DB Project (4:18)
- 112-Validate ENV Variables (10:42)
- 113-Prepare SQL and NoSQL Git Branches (5:07)
- 114-Explain docker-compose.yml File (16:05)
- 115-Run Services Using Docker Compose (14:35)
- 116-Connect DB GUI With Postgres DB (7:08)
- 117-Section-9 Recap (11:50)
- 118-What is ORM and ODM as a Techniques (17:28)
- 119-More About ORMs (12:01)
- 120-Connect Our Nest App With Postgres Container (23:59)
- 121-How ORM Database Abstraction Layer Works (2:24)
- 122-ORM Main Components (6:17)
- 123-TypeORM Entity (11:15)
- 124-TypeORM Entity Column Types (3:02)
- 125-TypeORM Repository (9:29)
- 126-Make CRUD Operation Using User Repository (6:45)
- 127-Refactor User Controller (6:26)
- 128-Test Our CRUD Operations On Postman (11:33)
- 129-Section-10 Summary (10:09)
- 130-Introduction (6:04)
- 131-Add Mongo Service In Docker-Compose (12:46)
- 132-Connect Compass GUI With Mongo Docker Container (3:06)
- 133-Connect Our Nest App with Mongo Container (7:16)
- 134-Define User Schema (13:38)
- 135-Inject User Model in User Service (5:54)
- 136-Refactor User Service (10:06)
- 137-Refactor User Controller (5:59)
- 138-Test Users CRUD Operations (7:48)
- 139-Validate MongoID In Params (18:16)
- 140-Take a Look On Documentation (6:40)
- 141-Push Code To Github (5:30)
- 142-Section-11 Recap (4:56)
- 143-Introduction (8:45)
- 144-Translation Use Cases (4:02)
- 145-Clone the Starter Repo (10:57)
- 146-Setup Translation Files (8:04)
- 147-Module Setup, I18n Options and Resolvers (9:39)
- 148-Translate Http Exception Message (15:13)
- 149-Refactor I18n Service (12:16)
- 151-Create a MongoDB Document with multi language (23:07)
- 150-Translate Input Validation Message (19:58)
- 152-Get Localized Data From MongoDB Depend on Front-end Request (14:11)
- 153-Validate the localized field (16:33)
- 154-Introduction - المقدمة (3:18)
- 155-section outline - محتوي السكشن (2:07)
- 156-Take a look to documentation - الرجوع للدوكمنتيشن (11:21)
- 157-Create project - إنشاء مشروع جديد (5:02)
- 158-Single file management - التعامل مع ملف واحد (18:17)
- 159-Array of files management - التعامل مع عدة ملفات (10:37)
- 160-Use Built-in parse file pipe to validate single file - عملية التحقق لملف واحد (17:01)
- 161-Use built-in parse file pipe to validate multiple files - عملية التحقق لاكثر من ملف (7:02)
- 162-Explain the problem with built-in file type validator (13:25)
- 163-Explain File Signature (16:20)
- 164-Note about large files (5:05)
- 165-Implement custom file signature validator (27:22)
- 166-Use File signature validator to validate array of files (11:04)
- 167-Refactoring-part-1 (7:10)
- 168-Refactoring-part-2 (7:59)
- 169-Refactoring-part-3 (13:19)
- 170-Refactoring-part-4 (6:26)
- 171-Refactoring-part-5 (11:24)
- 172-Refactoring-part-6 (10:22)
- 173-Refactoring-part-7 (12:21)