آموزش NodeJS: مبتدی تا حرفه ای - API برای تحویل غذا و تجارت الکترونیک

NodeJS: Beginner to Pro - APIs for Food Delivery & Ecommerce

نکته: آخرین آپدیت رو دریافت میکنید حتی اگر این محتوا بروز نباشد.
نمونه ویدیوها:
توضیحات دوره: ساختن APIهای ساده تا پیچیده REST برای پلتفرم‌های تجارت الکترونیک و تحویل غذا با استفاده از NodeJS (Typescript)، ExpressJS، MongoDB کار با یکی از پرتقاضاترین زبان‌های برنامه‌نویسی توسعه وب، Nodejs (Typescript) را با MongoDB از پایه تا پیشرفته با و مناسب یاد بگیرید. ساختار فایل کدنویسی بهینه شده Nodejs را با ساختن برنامه های کاربردی در دنیای واقعی با Node JS، Express، MongoDB، REDIS و موارد دیگر بیاموزید! آموزش ساخت APIهای ساده تا پیچیده REST برای پلتفرم‌های تحویل غذا و تجارت الکترونیک ساخت برنامه‌های وب مدرن، سریع و مقیاس‌پذیر در سمت سرور با NodeJS، ExpressJS، MongoDB با استفاده از Redis برای فهرست سیاه RefreshTokens آموزش ارسال نامه‌ها با استفاده از SendGrid آموزش استقرار Nodejs به هروکو Clean بهترین رویکردها با استفاده از POSTMAN (به عنوان فرانت اند) برای آزمایش APIها و صرفه جویی به صورت سازماندهی شده ادغام Stripe Payment Gateway صادرات داده ها به ExcelSheet درباره خوشه ها بیاموزید - عملکرد و مقیاس پذیری NodeJS را تقویت کنید درباره گزینه ها و فیلدهای مجازی نوع طرحواره مختلف بدانید درک و ایجاد CRONJOBs پیشها: نیازی به دانش NodeJS نیست! دانش عمومی در مورد نحوه عملکرد وب توصیه می شود، اما درک اولیه جاوا اسکریپت/تایپ اسکریپت ضروری نیست، اما می توان در حین گذراندن دوره، آن را دریافت کرد.

به جامع ترین دوره Node.js در Udemy بپیوندید و NodeJS را به صورت عملی یاد بگیرید!


Node.js احتمالاً محبوب ترین و مدرن ترین زبان برنامه نویسی سمت سرور است که این روزها می توانید در آن غوطه ور شوید!

توسعه دهندگان Node.js تقاضای زیادی دارند. ناگفته نماند کاربردهای آن در ساخت گردش کار برای پروژه‌هایی در هر اندازه.

این دوره همه اینها را به شما آموزش می دهد! از ابتدا با دانش قبلی صفر فرض شده است. اگرچه اگر مقداری دانش به همراه داشته باشید، مطمئناً می‌توانید به سرعت به ماژول‌های دوره‌ای که برای شما جالب‌تر است بروید.

آنچه در این دوره خواهید آموخت:

  • معرفی Nodejs، expressjs mongoDB

  • نصب پروژه Nodejs به اصول اولیه آن بپردازید

  • تأیید هویت کاربر

  • شروع با برنامه NodeJS تحویل غذا

  • اجرای فایل Dotenv چند بهینه سازی

  • افزودن صفحه بندی

  • اجرای Refresh Token برای احراز هویت قوی JWT

  • قرار دادن نشانه‌های تازه‌سازی در فهرست سیاه با استفاده از Redis با اعمال چند بهینه‌سازی

  • رفع پیام‌های خطای منطقه زمانی برای عدم وجود سابقه در Nodejs

  • نمایه سازی در MongoDB

  • به‌روزرسانی تصویر نمایه برخی از حفره‌های امنیتی را برطرف کنید

  • برنامه Nodejs را برای تولید در Heroku استقرار دهید (این برنامه دیگر رایگان نیست)

  • برنامه تجارت الکترونیک NodeJS - تبدیل از برنامه تحویل غذا با تغییرات مناسب

  • درگاه پرداخت Stripe را یکپارچه کنید

  • برخی از ویدیوهای جایزه مهم (صادر کردن داده ها به ExcelSheet، خوشه ها - افزایش مقیاس پذیری عملکرد NodeJS، اطلاعات در مورد گزینه های مختلف طرحواره فیلد مجازی و غیره)

  • درک ایجاد CRONJOBs

آیا این به نظر محتوای زیادی دارد؟ مطمئناً همینطور است!

این دوره کوتاهی نیست، اما در نهایت "راهنمای کامل" در Node.js است. ما به موضوعات زیادی می پردازیم و فقط سطح را خراش نمی دهیم.

ما همچنین فقط از تئوری خسته کننده و برخی اسلایدها عبور نمی کنیم. در عوض، ما 2 پروژه بزرگ ایجاد خواهیم کرد: REST API برای پلتفرم های تجارت الکترونیکی تحویل غذا

همه موضوعات و ویژگی‌های دوره در این پروژه‌ها نشان داده شده و مورد استفاده قرار می‌گیرند و بنابراین در یک محیط واقع‌بینانه با آنها آشنا می‌شوید.


آیا این دوره برای شماست؟

اگر تجربه Node.js ندارید، این دوره را دوست خواهید داشت زیرا با فرض دانش صفر شروع می شود. این دوره عالی برای تبدیل شدن به یک توسعه دهنده Node.js است.

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

آیا شما یک کاربر پیشرفته Node.js هستید؟ سپس برنامه درسی را بررسی کنید. شاید هیچ دوره دیگری پیدا نکرده باشید که نحوه استفاده از Node.js را با تایپ اسکریپت همراه با بهترین رویکردهای کدنویسی و ساختار انعطاف پذیر برای استفاده مجدد آسان نشان دهد.


پیش نیازها

  • به هیچ وجه به دانش Node.js نیاز نیست!

  • هیچ دانش زبان برنامه نویسی دیگری (علاوه بر جاوا اسکریپت/تایپ اسکریپت) عالی است اما اجباری نیست.

  • دانش پایه جاوا اسکریپت/تایپ اسکریپت فرض شده است - حداقل باید در حین گذراندن دوره، آن را انتخاب کنید. یک ماژول تجدید JS وجود دارد تا شما را سریعاً به آخرین نحو

    برساند
  • دانش کلی در مورد نحوه کار وب توصیه می شود اما لازم نیست


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

آشنایی با Nodejs، expressjs و mongoDB Introduction to Nodejs, expressjs & mongoDB

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

  • به انجمن Discord ما بپیوندید Join our Discord Community

  • از کانال یوتیوب من بیشتر بیاموزید Learn more from my Youtube Channel

  • Nodejs چیست؟ What is Nodejs

  • Nodejs Architecture Nodejs Architecture

  • Node چگونه کار می کند How Node Works

  • Expressjs چیست؟ What is Expressjs

  • MongoDB چیست؟ What is MongoDB

  • Nodejs & MongoDB را نصب کنید Install Nodejs & MongoDB

  • آشنایی با انواع درخواست در سرور Understanding different request types in a server

پروژه Nodejs را راه اندازی کنید و به اصول اولیه آن بپردازید Setup Nodejs project & deep dive into its basics

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

  • نصب و راه اندازی کد ویژوال استودیو (ویرایشگر کد) Install & Setup Visual Studio Code (Code Editor)

  • ایجاد پروژه جدید Nodejs و راه اندازی آن (برای تایپ اسکریپت) Creating new Nodejs project & setting it up (for typescript)

  • استفاده از Promise async صبر کنید، catch را امتحان کنید Use of Promise async wait try catch

  • استفاده از اپراتورهای Spread Use of Spread Operators

  • آشنایی با اصول مسیریابی Understanding Routing Basics

  • آشنایی با مبانی میان افزار Understanding Middleware Basics

  • اتصال به MongoDB Connecting to MongoDB

  • مدیریت متغیرهای محیطی Handling Environment Variables

  • ساختار پروژه Nodejs Structuring Nodejs Project

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

  • دسترسی به متغیرهای درخواست Accessing Request Variables

  • مبانی طرحواره (مدل ها) Basics of schema (models)

  • اجرای اعتبارسنجی درخواست و نمای کلی کد وضعیت خطای http Implementing request validation & overview of http error status code

  • کد منبع پیوست شده Attached Source Code

احراز هویت کاربر User Authentication

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

  • ایجاد یک کاربر با POSTMAN Creating a User with POSTMAN

  • درک CORS و پیاده سازی در NodeJS App Understanding CORS & implement in NodeJS App

  • کد شکست Refractor code

  • آماده سازی برای تأیید ایمیل کاربر Preparing for User Email Verification

  • ایمیل های تأیید را با استفاده از SendGrid و Gmail ارسال کنید و ایمیل های منحصر به فرد را بررسی کنید Send Verification Emails using SendGrid & Gmail and check for unique email

  • ایمیل تایید را دوباره بفرست Resend Verification Email

  • رمزگذاری رمز عبور با استفاده از bcrypt Encrypting password using bcrypt

  • JWT چیست و چگونه کار می کند What is JWT & how it works

  • پیاده سازی JWT برای احراز هویت کاربر Implementing JWT for User Authentication

  • راه اندازی Auth Middleware برای Backend APIs Setup Auth Middleware for Backend APIs

  • آشنایی با Auth Workflow & Optimize OTP Understand Auth Workflow & Optimise OTP related issues

  • ایجاد API برای قابلیت بازنشانی رمز عبور و آزمایش در POSTMAN Creating APIs for Reset Password functionality & Testing in POSTMAN

  • بهینه سازی کد Optimising Code

  • واکشی و به‌روزرسانی نمایه کاربر Fetch & Update User Profile

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

  • کد منبع پیوست شده Attached Source Code

شروع به کار با برنامه تحویل غذا Getting Started with Food Delivery App

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

  • آشنایی با گردش کار برنامه تحویل غذا و ایجاد یک مدیر Understanding Food Delivery App Workflow & Create an Admin

  • آپلود فایل با استفاده از مولتر برای ایجاد تصاویر بنر File Upload using Multer for Creating Banner Images

  • کد شکست Refractor code

  • درج شهرها در پایگاه داده Mongodb Insert Cities in Mongodb Database

  • واکشی شهرها، درج رستوران، اسناد دسته بندی در MongoDB Fetch Cities, Insert Restaurant, Category documents in MongoDB

  • استفاده از جستارهای جغرافیایی برای واکشی و جستجو در رستوران‌های اطراف Using Geospatial Queries to Fetch & Search Nearby Restaurants

  • موارد منوی رستوران (همچنین درک mongodb populate() و پروژه پرس و جو را اضافه کنید Add Restaurant Menu Items (also understanding mongodb populate() & query project

  • واکشی آیتم های منوی رستوران Fetch Restaurant Menu Items

  • عملیات CRUD را برای آدرس های کاربر انجام دهید Perform CRUD Operations for User Addresses

  • ثبت سفارش و واکشی سفارشات کاربر Place order & fetch user orders

  • کد منبع پیوست شده Attached Source Code

پیاده سازی فایل Dotenv و چند بهینه سازی Implementing Dotenv file & a few Optimizations

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

  • بنر را قابل کلیک کنید Make Banner Clickable

  • پیاده سازی فایل Dotenv Implementing Dotenv file

  • کد منبع پیوست شده Attached Source Code

اضافه کردن صفحه بندی Adding Pagination

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

  • پیاده سازی صفحه بندی در آدرس های کاربران Implementing Pagination in User Addresses

  • پیاده سازی صفحه بندی در لیست سفارشات کاربر Implementing Pagination in User Orders list

  • پیاده سازی صفحه بندی در لیست رستوران ها Implementing Pagination in Restaurants list

  • کد منبع پیوست شده Attached Source Code

پیاده سازی Refresh Token برای احراز هویت قوی JWT Implementing Refresh Token for Strong JWT Authentication

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

  • Refresh Token ایجاد کنید و همچنین یاد بگیرید که کلیدهای مخفی تصادفی ایجاد کنید Create Refresh Token & also learn to generate random secret keys

  • پس از انقضای توکن اکسس، توکن‌های جدید Access & Refresh را به‌طور خودکار ایجاد کنید Auto-generate new Access & Refresh Tokens when Access token expires

  • کد منبع پیوست شده Attached Source Code

قرار دادن توکن‌های Refresh در لیست سیاه با استفاده از Redis و اعمال چند بهینه‌سازی Blacklisting Refresh Tokens using Redis & applying few optimisations

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

  • درک اینکه چرا RefreshTokens در لیست سیاه نیاز است و راه اندازی Redis در MacOS Understanding why blacklist RefreshTokens needed & Setting up Redis in MacOS

  • راه اندازی Redis در ویندوز Setting up Redis in Windows

  • Redis را با Nodejs راه اندازی کنید و آن را با سرور محلی در سیستم خود وصل کنید Setup Redis with Nodejs & Connect it with Local Server in your System

  • اتصال رایگان به Redis Enterprise (سرور) با Nodejs Connecting to Redis Enterprise (Server) for free with Nodejs

  • بهینه سازی UserController در Nodejs برای ارسال تنها کاربر مورد نیاز Optimising UserController in Nodejs to send only required User

  • لیست سیاه RefreshToken با استفاده از Redis Blacklisting RefreshToken using Redis

  • رمز بازخوانی کاربر را از پایگاه داده Redis در خروج از سیستم پاک کنید Clear User Refresh Token from Redis database on Logout

  • مختصری در مورد نحوه مدیریت RefreshToken در Redis اگر همان حساب در چندین دستگاه باشد Brief on how to manage RefreshToken in Redis if same account in multiple device

  • کد منبع پیوست شده Attached Source Code

رفع خط زمانی و پیام های خطا برای عدم وجود سابقه در Nodejs Fixing Timezone & error messages for no records available in Nodejs

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

  • رفع مشکل منطقه زمانی و شماره پورت تاریخ فعلی در Nodejs Fixing Current Date Timezone & Port Number issue in Nodejs

  • بهینه سازی کنترلر رستوران برای هیچ سابقه ای یافت نشد Optimising Restaurant Controller for no records found

  • بهینه سازی OrderController برای هیچ سابقه ای یافت نشد Optimising OrderController for no records found

  • بهینه سازی AddressController برای هیچ سابقه ای یافت نشد Optimising AddressController for no records found

  • کد منبع پیوست شده Attached Source Code

نمایه سازی در MongoDB Indexing in MongoDB

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

  • Indexing MongoDB چیست؟ What is MongoDB Indexing

  • آشنایی با انواع نمایه سازی و مختصری در مورد عملگرهای مختلف Understanding types of Indexing & a brief about various operators

  • استفاده از geoNear (برای فاصله)، nearSphere و geoWithin در رستوران Using geoNear(for distance), nearSphere & geoWithin in Restaurant

  • کد منبع پیوست شده Attached Source Code

تصویر نمایه را به روز کنید و برخی از حفره های امنیتی را برطرف کنید Update Profile Picture & Fix some Security Loopholes

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

  • اعمال محدودیت های مبتنی بر نقش دقیق Applying Strict Role based Restrictions

  • اجرای ویرایش تصویر نمایه Implementing Edit Profile picture

  • کد منبع پیوست شده Attached Source Code

استقرار برنامه Nodejs برای تولید در Heroku (این برنامه دیگر رایگان نیست) Deploy Nodejs App for production to Heroku (It's Paid not free anymore)

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

  • مقیاس افقی در مقابل عمودی Horizontal vs Vertical Scaling

  • درک MongoDB Replication Understanding MongoDB Replication

  • استقرار برنامه Nodejs در Heroku Deploying Nodejs App to Heroku

  • بررسی فایل ها در Heroku و درک مشکل سیستم فایل Heroku Checking Files in Heroku & Understanding about Heroku filesystem problem

  • چگونه تست بار انجام دهیم؟ How to do Load Testing?

  • کد منبع پیوست شده Attached Source Code

برنامه تجارت الکترونیک - با تغییرات مناسب از برنامه تحویل غذا تغییر شکل دهید E-Commerce App - Transform from Food Delivery App with appropriate changes

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

  • برنامه NodeJS را برای تجارت الکترونیک راه اندازی کنید Setup NodeJS App for E-commerce

  • ثبت نام یا ورود کاربر از طریق شماره تلفن Register or Login User via Phone Number

  • ورود مبتنی بر OTP OTP based Login

  • کد شکست Refractor Code

  • به روز رسانی نمایه مشتری Update Customer Profile

  • ایجاد و واکشی دسته به عنوان مدیر Create & Fetch Category as an Admin

  • اضافه کردن و واکشی دسته های فرعی Add & fetch Sub Categories

  • افزودن و واکشی API برای فروشگاه با مالک Add & fetch APIs for Store with Owner

  • افزودن محصول Add Product

  • واکشی محصولات Fetch Products

  • به سبد خرید اضافه کنید و آن را واکشی کنید Add to Cart & fetch it

  • ثبت و دریافت سفارشات Place & fetch orders

  • کد شکست Refractor Code

  • کد منبع پیوست شده Attached Source Code

ادغام Stripe Payment Gateway Integrate Stripe Payment Gateway

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

  • کلیدهای راه راه را ایجاد کنید Generate Stripe Keys

  • ادغام Stripe API در NodeJS Integrate Stripe API in NodeJS

  • پرداخت را با استفاده از درگاه پرداخت Stripe انجام دهید Make payment using Stripe Payment Gateway

  • کد منبع پیوست شده Attached Source Code

برخی از ویدیوهای جایزه مهم Some Important Bonus Videos

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

  • عبارت منظم برای اعتبارسنجی آدرس ایمیل مناسب در طرحواره مدل Regular Expression to validate proper email address in Model Schema

  • خوشه ها - عملکرد و مقیاس پذیری NodeJS را تقویت کنید Clusters - Boost NodeJS Performance & Scalability

  • داده ها را به ExcelSheet صادر کنید Export Data to ExcelSheet

  • میدان مجازی Virtual field

  • کد منبع پیوست شده Attached Source Code

Cronjobs را درک و ایجاد کنید Understand & create Cronjobs

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

  • کرونجاب چیست؟ What is Cronjob?

  • ایجاد Cronjob Creating a Cronjob

  • کد منبع پیوست شده Attached Source Code

نمایش نظرات

آموزش NodeJS: مبتدی تا حرفه ای - API برای تحویل غذا و تجارت الکترونیک
جزییات دوره
28 hours
129
Udemy (یودمی) Udemy (یودمی)
(آخرین آپدیت)
467
4.7 از 5
دارد
دارد
دارد
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Nikhil Agarwal Nikhil Agarwal

برنامه نویس حرفه ای وب و برنامه

تجربه به عنوان برنامه نویس

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

من کارهای زیادی انجام داده‌ام. پروژه هایی با استفاده از چارچوب های مدرن frontend مانند Angular و در backend با Core PHP، Laravel PHP، NodeJS. من دوست دارم به عنوان یک توسعه دهنده فول استک کار کنم!

شروع کار با Ionic (نسخه 2) را در 2017 شروع کردم و در مدت کوتاهی اولویت اول من شد برای برنامه‌های بین پلتفرمی. من با فناوری‌های مشابه دیگری کار کرده‌ام اما آن را لذت‌بخش می‌دانم، به همین دلیل است که پروژه‌های زیادی با استفاده از Ionic ساخته‌ام (با استفاده از تمام نسخه‌های آن به جز نسخه 1).

تجربه به عنوان مربی

من یک خودآموخته حرفه ای هستم که هنگام یادگیری یک زبان جدید یا پیشرفت در زبان های شناخته شده، واقعاً قسمت های سخت و موضوعات دشوار را می دانم. برای ورود به دنیای آموزش، در فوریه 2021 یک کانال یوتیوب به نام "Coding Technyks" راه اندازی کردم، تلاش من این است که بهترین محتوایی را ارائه دهم که به راحتی در دسترس نیست یا برای مردم سخت است. در رابطه با برنامه نویسی (از جمله UI UX به همراه سایر موضوعات) انجام دهم.

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

این سفری جدید برایبه اشتراک گذاشتن تجربیاتم با افراد نیازمند در قالب دوره های دیجیتال، تمام تلاش من این است که تغییر خوبی در زندگی شما ایجاد کنم!