آموزش React، NodeJS، Express و MongoDB - راهنمای Fullstack MERN

React, NodeJS, Express & MongoDB - The MERN Fullstack Guide

نکته: آخرین آپدیت رو دریافت میکنید حتی اگر این محتوا بروز نباشد.
نمونه ویدیوها:
توضیحات دوره: با استفاده از این دوره متمرکز بر پروژه، برنامه های Fullstack React.js را با Node.js، Express.js و MongoDB (MERN) بسازید. یاد بگیرید که چگونه ReactJS را با NodeJS، Express و MongoDB متصل کنید و یک پروژه کامل را از ابتدا بسازید! بازخوانی اصول اولیه ReactJS، NodeJS، Express و MongoDB آموزش پیاده سازی Authentication و Authorization افزودن آپلود فایل به ReactJS + Node/Express Applications پیش نیازها: دانش اولیه در مورد ReactJS مورد نیاز است دانش ReactJS Hooks توصیه می شود دانش پایه در مورد Node، Express و MongoDB توصیه می شود، اما نیازی به NO متخصص نیست

ما پرفروش‌ترین دوره React را در Udemy ساختیم - این دوره اکنون به شما امکان می‌دهد دانش React خود را به سطح بالاتری ببرید و برنامه‌های وب تمام پشته را بر اساس React، NodeJS، MongoDB و Express بسازید!

ساخت برنامه های فول استک (به عنوان مثال frontend + backend) با پشته MERN بسیار پرطرفدار است - در این دوره، آن را از ابتدا با مثالی از یک پروژه کامل یاد خواهید گرفت!

MERN مخفف MongoDB، Express.js، React.js و Node.js است - و ترکیب این چهار فناوری به شما امکان می‌دهد برنامه‌های وب شگفت‌انگیز بسازید.

در این دوره، ما یک پروژه کامل می سازیم و شما یاد خواهید گرفت که چگونه این فناوری های مختلف با هم گام به گام کار می کنند. ما ابتدا نگاهی به تمام بلوک‌های سازنده جداگانه خواهیم داشت تا بتوانیم تا پایان دوره همه آنها را در یک برنامه شگفت‌انگیز ترکیب کنیم.

این دوره همچنین پس از اصول اولیه متوقف نمی‌شود - در عوض، نحوه اضافه کردن آپلود فایل، احراز هویت، مجوز و نحوه استقرار برنامه خود را به روش‌های مختلف به سرویس‌های میزبانی مختلف نیز خواهید آموخت.

این دوره توسط دو مدرس تدریس می شود - Max (React.js, Node/Express) و Manuel (MongoDB) که سال ها تجربه کار با این فناوری ها و آموزش آنها به افراد دیگر را دارند. ما تجربیات خود را استفاده و ترکیب کردیم تا بهترین دوره آموزشی MERN را که می‌توانید در آنجا پیدا کنید، به شما ارائه دهیم.

به طور مفصل، این دوره ارائه می دهد:

  • بازنگری مختصر در مورد فناوری های اصلی (React، Node، Express، MongoDB)

  • بخش‌های پروژه برای هر فناوری که دانش نظری در آن اعمال می‌شود

  • تئوری مفصل در مورد پشته MERN و روش‌های مختلف ترکیب فناوری‌ها

  • یک پروژه دوره کامل که در آن همه فن آوری ها در یک برنامه با هم ترکیب می شوند

  • آپلود فایل (تصویر) در React.js (ارسال فایل) و Node/Express (دریافت فایل)

  • احراز هویت کاربر (ثبت نام + ورود به سیستم)

  • مجوز کاربر (کنترل دسترسی به منابع خاص)

  • دستورالعمل‌های دقیق استقرار - از جمله روش‌های مختلف استقرار برنامه

  • انبوه آزمون‌ها و منابع اضافی!

در پایان این دوره، شما احساس راحتی می‌کنید که برنامه‌های پشته MERN خود را بسازید و می‌توانید تمام دانش آموخته‌شده در این دوره را برای غوطه‌ور شدن در پروژه‌ها و موارد استفاده خود به کار ببرید.

شرایط لازم برای شرکت در این دوره چیست؟

  • دانش قبلی پشته MERN لازم نیست

  • دانش پایه React.js اکیداً توصیه می‌شود - به عنوان بخشی از دوره آموزشی، یک تازه‌سازی ارائه می‌شود، اما این دوره برای آموزش React از پایه نیست

  • دانش Basic Node + Express توصیه می شود اما ضروری نیست

مثل همیشه، این دوره با 30 روز ضمانت بازگشت وجه ارائه می‌شود.

ما دوست داریم با شما در این دوره شرکت کنیم!


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

معرفی Introduction

  • معرفی Introduction

  • "پشته MERN" چیست؟ What is the "MERN Stack"?

  • MERN - اولین بررسی اجمالی MERN - A First Overview

  • به انجمن آموزش آنلاین ما بپیوندید Join our Online Learning Community

  • طرح کلی دوره Course Outline

  • چگونه از دوره بیشترین بهره را ببریم How To Get The Most Out Of The Course

  • استفاده از منابع دوره Using the Course Resources

پشته MERN - نظریه The MERN Stack - Theory

  • معرفی ماژول Module Introduction

  • درک تصویر بزرگ Understanding the Big Picture

  • شیرجه رفتن به جلو Diving Into the Frontend

  • درک Backend Understanding the Backend

  • REST در مقابل GraphQL REST vs GraphQL

  • اتصال Node & React Connecting Node & React

  • MERN - ملزومات MERN - Essentials

  • ایجاد محیط توسعه ما و سرورهای توسعه Creating our Development Environment & the Development Servers

  • غواصی عمیق تر در کد Diving Deeper Into the Code

  • منابع و لینک های مفید Useful Resources & Links

برنامه ریزی اپلیکیشن Planning the App

  • معرفی ماژول Module Introduction

  • درک ایده عمومی اپلیکیشن Understanding the General App Idea

  • ترسیم نمای فرانت‌اند Sketching out the Frontend

  • داده ها و نقاط پایانی API مورد استفاده در برنامه ما Data & API Endpoints used in our App

  • صفحات SPA مورد نیاز برای Frontend Required SPA Pages for the Frontend

React.js - یک تجدید کننده React.js - A Refresher

  • معرفی ماژول Module Introduction

  • React چیست؟ What is React?

  • نکته ای در مورد نسخه NodeJS A Note About The NodeJS Version

  • واکنش 18 React 18

  • راه اندازی یک پروژه شروع Setting Up a Starting Project

  • درک JSX Understanding JSX

  • درک مولفه ها Understanding Components

  • کار با چندین کامپوننت Working with Multiple Components

  • استفاده از Props برای انتقال داده بین کامپوننت ها Using Props to pass Data between Components

  • ارائه لیست داده ها Rendering Lists of Data

  • رسیدگی به رویدادها Handling Events

  • کودک کارآمد<=>ارتباطات والدین Efficient Child<=>Parent Communication

  • کار با "دولت" Working with "State"

  • بیشتر در مورد ایالت More on State

  • واکشی ورودی کاربر (صحافی دو طرفه) Fetching User Input (Two-way Binding)

  • اصول React.js React.js Basics

  • بسته شدن Wrap Up

  • منابع و لینک های مفید Useful Resources & Links

React.js - ساخت Frontend React.js - Building the Frontend

  • معرفی ماژول Module Introduction

  • شروع راه اندازی، صفحات و مسیرها Starting Setup, Pages & Routes

  • افزودن صفحه/کامپوننت UsersList Adding a UsersList Page / Component

  • افزودن یک جزء UserItem Adding a UserItem Component

  • طراحی برنامه و اجزای بیشتر Styling our App & More Components

  • مولفه های نمایشی در مقابل مولفه های حالتی Presentational vs Stateful Components

  • اضافه کردن سربرگ اصلی Adding a Main Header

  • افزودن Navlinks Adding Navlinks

  • پیاده سازی یک ناوبری دسکتاپ و موبایل پایه Implementing a Basic Desktop & Mobile Navigation

  • درک پورتال ها Understanding Portals

  • رسیدگی به وضعیت کشو Handling the Drawer State

  • متحرک سازی Sidedrawer Animating the Sidedrawer

  • رندر کردن مکان‌های کاربر و استفاده از بخش‌های مسیر پویا Rendering User Places & Using Dynamic Route Segments

  • دریافت پارامترهای مسیر Getting Route Params

  • اضافه کردن دکمه های سفارشی Adding Custom Buttons

  • اضافه کردن یک مدال Adding a Modal

  • رندر کردن نقشه با گوگل مپ Rendering a Map with Google Maps

  • ادامه بدون کارت اعتباری Continuing without a Credit Card

  • اختیاری: بیشتر در مورد ()useEffect Hook Optional: More on the useEffect() Hook

  • افزودن یک مؤلفه ورودی فرم سفارشی Adding a Custom Form Input Component

  • مدیریت وضعیت در مؤلفه ورودی Managing State in the Input Component

  • افزودن اعتبار سنجی ورودی Adding Input Validation

  • به اشتراک گذاری مقادیر ورودی و افزودن چندین ورودی Sharing Input Values & Adding Multiple Inputs

  • مدیریت فرم در سطح کشور Managing Form-wide State

  • تکمیل فرم "افزودن مکان". Finishing the "Add Place" Form

  • شروع کار در صفحه "به روز رسانی مکان". Starting Work on the "Update Place" Page

  • تنظیم مولفه ورودی Adjusting the Input Component

  • ایجاد یک هوک فرم سفارشی (useForm) Creating a Custom Form Hook (useForm)

  • اختیاری: اطلاعات بیشتر در مورد React Hooks (سفارشی). Optional: More on (Custom) React Hooks

  • تنظیم قلاب فرم Adjusting the Form Hook

  • رفع مشکلات جزئی Fixing Minor Issues

  • نمایش اخطار حذف Showing a Deletion Warning

  • افزودن یک صفحه "Auth" و فرم ورود Adding an "Auth" Page & Login Form

  • اضافه کردن دکمه ثبت نام + "Switch Mode". Adding Signup + "Switch Mode" Button

  • افزودن زمینه تأیید اعتبار برای مدیریت ایالت در سطح برنامه Adding Auth Context for App-wide State Management

  • گوش دادن به تغییرات زمینه Listening to Context Changes

  • افزودن مسیرهای احراز هویت و احراز هویت نشده Adding Authenticated & Unauthenticated Routes

  • استفاده بیشتر از زمینه تأیید اعتبار More Auth Context Usage

  • بسته شدن Wrap Up

  • منابع و لینک های مفید Useful Resources & Links

Node.js & Express.js - یک تجدید کننده Node.js & Express.js - A Refresher

  • معرفی ماژول Module Introduction

  • Node.js چیست؟ What is Node.js?

  • نوشتن اولین کد Node.js Writing our First Node.js Code

  • ارسال درخواست و پاسخ Sending Requests & Responses

  • Express.js چیست؟ What is Express.js?

  • افزودن Express.js Adding Express.js

  • آشنایی با مزایای Express.js Understanding the Advantages of Express.js

  • اجرای کد چگونه کار می کند How Code Execution Works

  • مبانی Node & Express Node & Express Basics

  • منابع و لینک های مفید Useful Resources & Links

Node.js & Express.js - ساخت REST API ما Node.js & Express.js - Building our REST API

  • معرفی ماژول Module Introduction

  • راه اندازی پروژه ما Setting up our Project

  • پیاده سازی مسیریابی پایه Implementing Basic Routing

  • افزودن مسیرهای مکان خاص Adding Place-Specific Routes

  • دریافت مکان توسط شناسه کاربری Getting a Place By User ID

  • رسیدگی به خطاها Handling Errors

  • اضافه کردن مدل خطای خودمان Adding our own Error Model

  • اضافه کردن کنترلرها Adding Controllers

  • افزودن مسیر POST و استفاده از پستچی Adding a POST Route & Using Postman

  • رسیدگی به خطاها برای مسیرهای پشتیبانی نشده Handling Errors for Unsupported Routes

  • افزودن مسیرهای پچ برای به‌روزرسانی مکان‌ها Adding Patch Routes to Update Places

  • حذف مکان ها Deleting Places

  • نهایی کردن منبع "دریافت مکان ها توسط شناسه کاربری". Finalizing the "Get Places by User ID" Resource

  • راه اندازی مسیرهای کاربری (ثبت نام، ورود، دریافت کاربران) Setting Up the User Routes (Signup, Login, Get Users)

  • اعتبارسنجی ورودی API (بدن های درخواستی) Validating API Input (Request Bodies)

  • اعتبارسنجی درخواست‌های وصله و مسیرهای کاربر Validating Patch Requests & User Routes

  • استفاده از API Geocoding گوگل برای تبدیل یک آدرس به مختصات Using Google's Geocoding API to Convert an Address Into Coordinates

  • بسته شدن Wrap Up

  • منابع و لینک های مفید Useful Resources & Links

کار با MongoDB & Mongoose - Refresher Working with MongoDB & Mongoose - A Refresher

  • معرفی ماژول Module Introduction

  • MongoDB چیست؟ What is MongoDB?

  • SQL در مقابل NoSQL SQL vs NoSQL

  • React را به پایگاه داده متصل می کنید؟ Connecting React to a Database?

  • راه اندازی MongoDB Setting Up MongoDB

  • ایجاد یک Backend ساده و اتصال آن به پایگاه داده Creating a Simple Backend & Connecting it to the Database

  • ایجاد یک سند با MongoDB Creating a Document with MongoDB

  • دریافت داده از پایگاه داده Getting Data from the Database

  • نصب Mongoose Installing Mongoose

  • درک مدل ها و طرحواره ها Understanding Models & Schemas

  • ایجاد یک محصول Creating a Product

  • اتصال به پایگاه داده و ذخیره محصول Connecting to the Database & Saving the Product

  • دریافت محصولات Getting Products

  • درک ObjectID Understanding the ObjectID

  • بسته شدن Wrap Up

  • منابع و لینک های مفید Useful Resources & Links

اتصال Backend به پایگاه داده - MongoDB & Mongoose Connecting the Backend to the Database - MongoDB & Mongoose

  • معرفی ماژول Module Introduction

  • نصب Mongoose و اتصال Backend ما به MongoDB Installing Mongoose & Connecting our Backend to MongoDB

  • ایجاد طرح و مدل مکان Creating the Place Schema & Model

  • ایجاد و ذخیره اسناد در پایگاه داده Creating & Storing Documents in the Database

  • دریافت مکان ها توسط شناسه مکان Getting Places by the PlaceID

  • دریافت مکان ها توسط شناسه کاربری Getting Places by the UserID

  • به روز رسانی مکان ها Updating Places

  • حذف مکان ها Deleting Places

  • نحوه ارتباط کاربران و مکان ها How Users & Places are Related

  • ایجاد مدل کاربر Creating the User Model

  • استفاده از مدل کاربر برای ثبت نام Using the User Model for Signup

  • افزودن ورود کاربر Adding the User Login

  • دریافت کاربران Getting Users

  • افزودن رابطه بین مکان ها و کاربران Adding the Relation between Places & Users

  • ایجاد مکان ها و افزودن آن به یک کاربر Creating Places & Adding it to a User

  • حذف مکان ها و حذف آن از کاربر Deleting Places & Removing it From the User

  • گرفتن مکان - یک جایگزین Getting Places - An Alternative

  • پاک کردن کد ما Cleaning Up our Code

  • بسته شدن Wrap Up

  • منابع و لینک های مفید Useful Resources & Links

اتصال React.js Frontend به Backend Connecting the React.js Frontend to the Backend

  • معرفی ماژول Module Introduction

  • راه اندازی اولیه Initial Setup

  • ارسال یک درخواست POST به Backend Sending a POST Request to the Backend

  • اختیاری: fetch() API Optional: The fetch() API

  • رسیدگی به خطاهای CORS Handling CORS Errors

  • شروع با مدیریت خطا Getting Started with Error Handling

  • مدیریت صحیح خطا در Frontend Proper Error Handling in the Frontend

  • ارسال درخواست ورود Sending a Login Request

  • دریافت کاربران با درخواست GET Getting Users with a GET Request

  • ایجاد یک هوک Http سفارشی Creating a Custom Http Hook

  • بهبود هوک Http سفارشی Improving the Custom Http Hook

  • استفاده از Http Hook برای دریافت کاربران Using the Http Hook to GET Users

  • افزودن مکان ها (POST) Adding Places (POST)

  • بارگیری مکان ها بر اساس شناسه کاربری Loading Places by User Id

  • به روز رسانی مکان ها Updating Places

  • حذف مکان ها Deleting Places

  • تعمیر NavLinks و "My Places" Fixing NavLinks & "My Places"

  • تنظیمات نهایی Final Adjustments

  • منابع و لینک های مفید Useful Resources & Links

اضافه کردن آپلود فایل Adding File Upload

  • معرفی ماژول Module Introduction

  • ساخت کامپوننت ImageUpload Building an ImageUpload Component

  • تکمیل و استفاده از مؤلفه آپلود تصویر (در یک فرم) Finishing & Using the ImageUpload Component (in a Form)

  • در باطن: استفاده از مولتر برای ذخیره فایل ها On the Backend: Using Multer to Save Files

  • فیلتر کردن فایل‌ها در بک‌اند (فقط تصاویر!) Filtering Files on the Backend (Images Only!)

  • سیم کشی Frontend و Backend Up Wiring Frontend and Backend Up

  • اتصال کاربران به تصاویر Connecting Users to Images

  • ارائه تصاویر به صورت ایستا Serving Images Statically

  • آپلود تصاویر برای مکان های جدید Uploading Images for New Places

  • حذف تصاویر هنگام حذف مکان ها Deleting Images When Places Get Deleted

  • بسته شدن Wrap Up

  • منابع و لینک های مفید Useful Resources & Links

افزودن احراز هویت Adding Authentication

  • معرفی ماژول Module Introduction

  • احراز هویت چگونه کار می کند (در برنامه MERN) How Authentication Works (in a MERN App)

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

  • ورود کاربران (با رمزهای عبور هش شده) Logging Users In (with Hashed Passwords)

  • تولید توکن (JWT) در Backend Generating Tokens (JWT) on the Backend

  • اختیاری: بیشتر در مورد JSON Web Tokens Optional: More on JSON Web Tokens

  • محافظت از مسیر باطن با Auth Middleware Backend Route Protection with Auth Middleware

  • استفاده و اتصال JWT (Tokens) در React Using & Attaching JWT (Tokens) in React

  • استفاده از توکن ها برای به روز رسانی و حذف مکان ها Using Tokens to Update and Delete Places

  • اضافه کردن مجوز Adding Authorization

  • مجوز در مورد "حذف مکان ها" Authorization on "Delete Places"

  • ذخیره توکن در حافظه مرورگر Storing the Token in the Browser Storage

  • افزودن ورود خودکار (نسخه اصلی) Adding Auto-Login (Basic Version)

  • مدیریت تاریخ انقضای توکن Managing the Token Expiration Date

  • ورود خودکار و خروج خودکار به پایان رسید Finished Auto-Login & Auto-Logout

  • ایجاد یک هوک احراز هویت سفارشی Creating a Custom Authentication Hook

  • احراز هویت - خلاصه Authentication - Summary

  • بهبودهای عمومی برنامه General App Improvements

  • احراز هویت و مجوز Authentication & Authorization

  • منابع و لینک های مفید Useful Resources & Links

استقرار برنامه Application Deployment

  • معرفی ماژول Module Introduction

  • نمای کلی مراحل استقرار Deployment Steps Overview

  • استفاده از متغیرهای محیطی (Node.js) Using Environment Variables (Node.js)

  • متغیرهای محیطی در React Apps Environment Variables in React Apps

  • آماده سازی کلیدهای API و اعتبارنامه ها Preparing API Keys & Credentials

  • ساخت اپلیکیشن React Building the React App

  • اضافه کردن کد Splitting به React Adding Code Splitting to React

  • درک جایگزین های احتمالی استقرار Understanding Possible Deployment Alternatives

  • استقرار API REST مستقل (مثال: Heroku) Deploying a Standalone REST API (Example: Heroku)

  • استقرار یک React SPA مستقل (مثال: میزبانی Firebase) Deploying a Standalone React SPA (Example: Firebase Hosting)

  • رفع مشکلات سبک Fixing Style Issues

  • استقرار یک برنامه ترکیبی Deploying a Combined App

  • ذخیره سازی فایل ها/آپلودها Storing Files/ Uploads

  • بسته شدن Wrap Up

جمع بندی و مراحل بعدی Roundup & Next Steps

  • خلاصه دوره Course Roundup

  • محتوای جایزه Bonus Content

نمایش نظرات

Udemy (یودمی)

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

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

آموزش React، NodeJS، Express و MongoDB - راهنمای Fullstack MERN
جزییات دوره
18.5 hours
208
Udemy (یودمی) Udemy (یودمی)
(آخرین آپدیت)
53,690
4.5 از 5
دارد
دارد
دارد
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Maximilian Schwarzmüller Maximilian Schwarzmüller

دارای گواهینامه AWS، توسعه دهنده وب و مدرس حرفه ای

Academind by Maximilian Schwarzmüller Academind by Maximilian Schwarzmüller

آموزش آنلاین

Manuel Lorenz Manuel Lorenz

تحلیلگر و مدرس حرفه ای کسب و کار