آموزش جاوا اسکریپت حرفه ای 2023 (از مبتدی تا پیشرفته!)

Professional JavaScript 2023 (Beginner to Advanced!)

نکته: آخرین آپدیت رو دریافت میکنید حتی اگر این محتوا بروز نباشد.
نمونه ویدیوها:
توضیحات دوره: این منبع شماره 1 برای تسلط بر جاوا اسکریپت مدرن است! با ساخت پروژه های واقعی و زیبا، جاوا اسکریپت ES6+ مدرن را بیاموزید. نحوه کدنویسی JS در سال 2023 با ساخت پروژه های واقع گرایانه از ابتدا و دیدن اینکه چگونه همه اینها با هم تطبیق می کنند بهترین روش ها در سال 2023 از صدها اشتباه مبتدی اجتناب کنید تا افرادی که باید با کد شما تعامل داشته باشند، به راحتی به اصول اولیه JS/برنامه نویسی مسلط شوند: var/let/const، توابع، اشیاء و آرایه‌ها، و غیره. بهترین روش‌های حیاتی که هر توسعه‌دهنده JS باید بداند (مانند نحوه استفاده از async/wait) یاد بگیرید چگونه با استفاده از fetch () با یک API به درستی ارتباط برقرار کنید. : توابع پیکان، تخریب ساختار، اپراتور گسترش، و غیره. پس از آن به راحتی به React/NextJS/Angular/Vue یا NodeJS مسلط شوید، زیرا به مفاهیمی که اغلب در آن فریم ورک ها استفاده می شوند تسلط دارید، برنامه های وب مدرن بدون چارچوب بسازید و ببینید چرا مردم از React یک فرآیند ساخت ساده استفاده می کنند. JS با بسته وب و Babel BONUS: با گذراندن دوره، طبیعتاً طراحی/HTML/CSS را نیز بهبود خواهید داد.

-- جدید در UDEMY (فقط دوره های من را به Udemy تغییر دادم) --


این منبع شماره 1 برای تسلط بر جاوا اسکریپت مدرن (ES6+) است!

جاوا اسکریپت خود را با ساختن پروژه های زیبا و واقعی از ابتدا به سطح پیشرفته و حرفه ای ببرید (2 پروژه کوچک مبتدی، 1 پروژه بزرگ متوسط ​​و 1 پروژه بزرگ پیشرفته). دوره های دیگر ابتدا از مفاهیم قدیمی شروع می شوند (مانند ES5 و پایین تر) -- ما از همان ابتدا از مفاهیم مدرن استفاده خواهیم کرد (ES6+ مانند توابع const/let و arrow -- البته به درستی توضیح داده شده است).


پروژه های دوره

پروژه های سطح بالا و دنیای واقعی. مهندسی ماهر برای کمک به شما در کدنویسی برنامه های وب وب سایت های مدرن با جدیدترین بهترین شیوه ها.

  • 2 پروژه کوچک مبتدی:

    • شمارنده فانتزی: یک برنامه پیشخوان مفید بسازید

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

  • 1 پروژه متوسط ​​بزرگ:

    • CorpComment : یک ابزار بازخورد عمومی شیک بسازید

  • 1 پروژه پیشرفته بزرگ:

    • rmtDev : یک تابلوی شغلی شیک برای کارهای توسعه دهنده راه دور بسازید


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

1) نحوه کدنویسی JS در سال 2023 با ساختن پروژه های واقع گرایانه از ابتدا و دیدن اینکه چگونه همه با هم هماهنگ می شوند

2) از صدها اشتباه مبتدی اجتناب کنید تا افرادی که باید با کد شما تعامل داشته باشند این کار را آسان کنند

3) تسلط عمیق بر اصول اولیه JS/برنامه‌نویسی: var/let/const، توابع، آرایه‌های اشیاء و غیره.

4) بهترین شیوه های حیاتی که هر برنامه نویس JS باید بداند (مثلاً نحوه استفاده از async/await)

5) نحوه برقراری ارتباط صحیح با یک API با استفاده از fetch()

را بیاموزید

6) اضافات مهم به JS را بیاموزید: توابع پیکان، ساختارشکنی، عملگر گسترش، و غیره.

7) پس از آن به راحتی به React/Angular/Vue یا Node.js مسلط شوید زیرا به مفاهیمی که اغلب در آن فریم ورک ها استفاده می شوند تسلط دارید

8) برنامه های وب مدرن بدون چارچوب بسازید و ببینید چرا مردم از React استفاده می کنند

9) یک فرآیند ساخت ساده برای JS با webpack و Babel

پیاده سازی کنید

10) پاداش: با گذراندن دوره، طبیعتاً طراحی/HTML/CSS را نیز بهبود خواهید داد


به طور خاص، اینها مفاهیمی هستند که شما بدون ترتیب خاصی یاد خواهید گرفت

  • جاوا اسکریپت چیست با آن چه کنیم

  • نحوه گنجاندن JS در فایل HTML ('defer')

  • var/let/const

  • زمان استفاده از let به جای const

  • تسلط عمیق بر ساختارهای انواع داده (آرایه ها، اشیاء و غیره)

  • تسلط عمیق بر توابع (عملکردهای سنتی در مقابل پیکان)

  • الفظ الگو (``)

  • اپراتور سه تایی (? :)

  • نحوه دستکاری HTML (که دستکاری DOM نیز نامیده می شود) -- querySelector()، دریافت ورودی کاربر از قسمت ورودی، غیرفعال کردن دکمه ها، و غیره.

  • نحوه دستکاری CSS

  • برخورد با رویدادها (مانند کلیک و تایپ رویدادها)

  • تخصیص رویداد (حباب کردن رویداد)

  • برخورد با فرم‌ها (کاربر داده‌ها را ارسال می‌کند -- بسیار رایج است)

  • نحوه عملکرد وب‌سایت‌ها و برنامه‌های وب مدرن معمولاً از منظر جاوا اسکریپت

  • عبارات if-else

  • setTimeout()

  • اپراتور

  • روش های آرایه (به عنوان مثال .forEach()، .map()، .slice()، .join())

  • روش های رشته ای (به عنوان مثال .includes()، .trim())

  • مفهوم DRY (خودت را تکرار نکن)

  • نحوه استخراج کدهای تکراری در تابع کمکی خودش

  • نحوه برقراری ارتباط صحیح با سرورها

  • fetch() API

  • دریافت درخواست‌ها

  • درخواست‌های POST

  • AJAX

  • نحوه کار با JSON

  • کد همزمان در مقابل ناهمزمان

  • قول می دهد (.then و .catch)

  • رسیدگی به خطا (پرتاب خطای جدید)

  • کدهای وضعیت HTTP 2xx، 4xx و 5xx

  • ناهمگام سازی/در انتظار

  • امتحان/گرفتن

  • "state" و "rendering" چیست

  • ساختار/معماری کلی

  • ساختار پوشه

  • متداول ترین حلقه (forEach)

  • افزایش یا کاهش 1 (++ و --)

  • اپراتور unary plus (+)

  • مژولار بودن (IIFE در مقابل تفکیک کد JS شما به چندین فایل)

  • نحوه برخورد با XSS

  • نظرات در JS

  • عبارات منظم

  • ساختار URL (طرح/پروتکل، دامنه، پارامترهای رشته پرس و جو)

  • تخریب کننده

  • تعریف نشده و پوچ

  • مقادیر واقعی و نادرست

  • زنجیره کردن اختیاری (?.)

  • واردات/صادرات (ماژول‌های ES) در مقابل require/module.exports (CommonJS)

  • صادرات با نام صادرات در مقابل صادرات پیش‌فرض

  • مقدار پیش‌فرض برای پارامتر تابع

  • بازسازی چیست

  • توابع کمکی/کمکی

  • ویژگی‌های رایج مانند مرتب‌سازی صفحه‌بندی

    را پیاده‌سازی کنید
  • مسیریابی (به عنوان مثال نحوه دستکاری URL)

  • شیء پنجره

  • DOMContentLoaded

  • LocalStorage

  • فرایند ساخت (وبک، Babel، PostCSS)

  • قالب‌بندی در JS (نقطه ویرگول، زبانه در مقابل فاصله)

  • برای حلقه

  • و بیشتر! (نمی توان همه چیز را در اینجا گنجاند)


از کشمکش با جاوا اسکریپت برای سالهای آینده خودداری کنید. به امید دیدار شما در دوره!


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

معرفی Introduction

  • مقدمه (چرا JS بسیار سودآور است و پروژه های دوره ای) Introduction (Why JS Is So Profitable & Course Projects)

  • یادگیری کد شماره 1 - طرز فکر (سندرم و اعتماد به نفس تقلب کننده) Learning to Code #1 - Mindset (Imposter Syndrome & Confidence)

  • آموزش کد شماره 2 - منحنی یادگیری شیب دار = مانع ورود Learning to Code #2 - Steep Learning Curve = Barrier to Entry

  • آموزش کد شماره 3 - StackOverflow برای مبتدیان Learning to Code #3 - StackOverflow for Beginners

  • راه اندازی محیط توسعه ما شماره 1: مرورگر (سهم بازار) Setting Up Our Development Environment #1: Browser (Market Share)

  • راه اندازی محیط توسعه ما شماره 2: ویرایشگر کد Setting Up Our Development Environment #2: Code Editor

  • قبل از شروع بخوانید: منابع پروژه (مانند نشانی‌های اینترنتی تصویر) READ BEFORE STARTING: Project resources (e.g. image URLs)

جاوا اسکریپت مبتدی Beginner JavaScript

  • اصول HTML و CSS برای توسعه دهندگان جاوا اسکریپت HTML & CSS Fundamentals for JavaScript Developers

  • متغیرها و انواع داده ها (مقدمه) Variables and Data Types (Intro)

  • 'var' & strings 'var' & Strings

  • شماره Numbers

  • snake_case vs kebab-case vs camelcase snake_case vs kebab-case vs camelCase

  • var vs let vs const var vs let vs const

  • بولین ها Booleans

  • آرایه ها Arrays

  • اشیاء Objects

  • خروجی مقادیر متغیر در کنسول Outputting Variable Values in Console

  • توابع سنتی (اعلام عملکرد) Traditional Functions (Function Declarations)

  • ورودی تابع (که «پارامتر» یا «آرگومنت» نیز نامیده می‌شود) Function Input (Also Called 'Parameter' or 'Argument')

  • برگرداندن چیزی از عملکرد Returning Something From Function

  • خلاصه توابع Summary of Functions

  • تابع سنتی جایگزین (عبارات تابع) Alternative Traditional Function (Function Expressions)

  • توابع پیکان Arrow Functions

  • توابع پیکان ( نحو کوتاهتر) Arrow Functions (Shorter Syntax)

  • نحوه نامگذاری توابع How to Name Functions

  • الحاق رشته String Concatenation

  • الفاظ قالب (`` -- بک تیک در جاوا اسکریپت) Template Literals (`` -- Backticks in JavaScript)

  • بیانیه if-else (> و <اپراتورها) if-else Statement (> and < Operators)

  • == در مقابل === اپراتورهای برابری == vs === Equality Operators

  • سایر اپراتورها (>=، <=، !، !=، &&، ||) Other Operators (>=, <=, !, !=, &&, ||)

  • اپراتور سه تایی (؟ :) Ternary Operator (? :)

  • ارزش های درست و نادرست Truthy & Falsy Values

  • var vs let var vs let

  • انتخاب عناصر HTML با جاوا اسکریپت Selecting HTML-Elements With JavaScript

  • دستکاری HTML با جاوا اسکریپت (دستکاری DOM) Manipulating HTML With JavaScript (DOM Manipulation)

  • متن در مقابل innerHTML textContent vs innerHTML

  • innerHTML در مقابل insertAdjacentHTML (درج HTML با جاوا اسکریپت) innerHTML vs insertAdjacentHTML (Inserting HTML With JavaScript)

  • گزینه 1 - دستکاری CSS با جاوا اسکریپت ('style') Option 1 - Manipulating CSS With JavaScript ('style')

  • گزینه 2 - دستکاری CSS با جاوا اسکریپت ('classList') Option 2 - Manipulating CSS With JavaScript ('classList')

  • رویدادها و عملکردهای مدیریت رویداد Events and Event Handler Functions

  • اشتباه رایج با addEventListener Common Mistake With addEventListener

  • این بخش تمام شد! آفرین! Finished This Section! Well Done!

مینی پروژه: کانتر فانتزی Mini-Project: Fancy Counter

  • معرفی پروژه Project Intro

  • HTML و CSS پروژه (از رد نشوید) Project HTML & CSS (Don't Skip)

  • شمارنده فانتزی - کد نویسی جاوا اسکریپت Fancy Counter - Coding JavaScript

مینی پروژه: تحلیل ورد Mini-Project: Word Analytics

  • معرفی پروژه Project Intro

  • HTML و CSS پروژه (از رد نشوید) Project HTML & CSS (Don't Skip)

  • Word Analytics - کدنویسی جاوا اسکریپت Word Analytics - Coding JavaScript

جاوا اسکریپت متوسط Intermediate JavaScript

  • رشته ها (متوسط) Strings (Intermediate)

  • اعداد (متوسط) Numbers (Intermediate)

  • بولی (متوسط) Booleans (Intermediate)

  • آرایه ها (متوسط) Arrays (Intermediate)

  • اشیاء (متوسط) Objects (Intermediate)

  • افزایش (++) و کاهش (--) Increment (++) & Decrement (--)

  • کنسول Console

  • توابع (متوسط) Functions (Intermediate)

  • بالا بردن Hoisting

  • تایمر (setTimeout & setInterval) Timers (setTimeout & setInterval)

  • حلقه ها (برای هر و برای) Loops (forEach & for)

  • واکشی API Fetch API

  • واکشی مثال API (دریافت داده و نمایش در صفحه) Fetch API Example (Get Data & Display On Page)

  • واکشی خلاصه سریع API Fetch API Quick Summary

  • DOM متوسط ​​شماره 1: دستکاری DOM Intermediate DOM #1: Manipulating the DOM

  • DOM متوسط ​​شماره 2: شی رویداد Intermediate DOM #2: Event Object

  • DOM متوسط ​​شماره 3: حباب رویداد و نمایندگی رویداد Intermediate DOM #3: Event Bubbling & Event Delegation

پروژه 1: CorpComment Project 1: CorpComment

  • معرفی پروژه Project Introduction

  • راه اندازی پروژه Project Setup

  • VS Code Extension: Live-Server VS Code Extension: Live-Server

  • Counter Component (JS Fundamentals، DOM Manipulation، رویدادها) Counter Component (JS Fundamentals, DOM Manipulation, Events)

  • ارسال مؤلفه (فرم داده ها و If/Else و setTimeout() و روش های آرایه و `` & ? :) Submit Component (Form Data & If/Else & setTimeout() & Array Methods & `` & ? :)

  • Refactoring (اصل DRY و ثابت و استخراج منطق تکراری به تابع) Refactoring (DRY Principle & Constants & Extract Repetitive Logic Into Function)

  • جزء لیست بازخورد (دریافت داده با Fetch & AJAX & JSON & Promises & Errors) Feedback List Component (Get Data With Fetch & AJAX & JSON & Promises & Errors)

  • Refactoring بیشتر (میانبر هنگامی که نام ویژگی شی = ارزش و [].forEach()) More Refactoring (Shortcut When Object Property Name = Value & [].forEach())

  • فرم/ارسال مؤلفه (پست داده با واکشی و JSON و سرصفحه ها و مدیریت خطا) Form/Submit Component (Post Data With Fetch & JSON & Headers & Error Handling)

  • مؤلفه فهرست بازخورد - گسترش و رأی موافق (تعویض رویداد/حباب و ++/--) Feedback List Component - Expand & Upvote (Event Delegation / Bubbling & ++/--)

  • جزء لیست هشتگ (===/!== & forEach() & querySelector()) Hashtag List Component (=== / !== & forEach() & querySelector())

  • Final Loose Ends (Modularity/IIFE & Naming Things & XSS) Final Loose Ends (Modularity / IIFE & Naming Things & XSS)

جاوا اسکریپت پیشرفته Advanced JavaScript

  • میانبرهای کد VS VS Code Shortcuts

  • آرایه ها (پیشرفته) Arrays (Advanced)

  • اشیاء (پیشرفته) Objects (Advanced)

  • توابع (پیشرفته) Functions (Advanced)

  • در حال تخریب Destructuring

  • اپراتور پخش (...) Spread Operator (...)

  • مقادیر اولیه در مقابل مقادیر مرجع Primitives vs Reference Values

  • تعریف نشده و پوچ undefined and null

  • اتصال کوتاه با && و || Short Circuiting With && and ||

  • واکشی API با Async Await Fetch API With Async Await

  • ماژول های ES (واردات/صادرات) ES Modules (import / export)

  • مسیرهای فایل File Paths

  • حلقه های دیگر (در حالی که و برای از) Other Loops (while & for of)

  • سوئیچ بیانیه Switch Statement

  • شی پنجره Window Object

  • ریاضی Math

  • تاریخ Date

  • برنامه نویسی OOP در جاوا اسکریپت OOP Programming in JavaScript

  • وعده ها Promises

  • حلقه رویداد (چگونه جاوا اسکریپت زیر سرپوش کار می کند) Event Loop (How JavaScript Works Under the Hood)

پروژه 2: rmtDev Project 2: rmtDev

  • معرفی پروژه Project Introduction

  • راه اندازی پروژه Project Setup

  • مؤلفه جستجو (عبارات منظم و واکشی API و ساختارشکنی و [].slice()) Search Component (Regular Expressions & Fetch API & Destructuring & [].slice())

  • جزء لیست شغل (تعریف نشده/تهی، &&، ? .، [].map، [].join()) Job List Component (Undefined / Null, &&, ? ., [].map, [].join())

  • ماژولار بودن با ماژول های ES (ساختار پوشه و صادرات/واردات) Modularity with ES Modules (Folder Structure & Export / Import)

  • مؤلفه خطا («Rendering» و پیش‌فرض در مقابل صادرات نام‌گذاری شده و پارامترهای پیش‌فرض Fn) Error Component ('Rendering' & Default vs Named Export & Default Fn Parameters)

  • Refactoring (اهمیت ساختار خوب در Codebase) Refactoring (Importance Of Good Structure In Codebase)

  • Refactoring بیشتر (جزئیات شغلی) More Refactoring (Job Details Component)

  • بهبود تماس‌های واکشی (ساختار خوب برای تماس‌های fetch() و کدهای وضعیت 2xx، 4xx) Improving Fetch Calls (Good Structure For fetch() Calls & 2xx, 4xx Status Codes)

  • Async/Await (در مقابل .then & try/catch & Promises) Async / Await (vs .then & try / catch & Promises)

  • Refactor Fetch Calls (Helper/Utility Functions) Refactor Fetch Calls (Helper / Utility Functions)

  • مرتب‌سازی جزء ۱ (مرتب‌سازی داده‌ها و «وضعیت») Sorting Component Part 1 (Sorting Data & 'State')

  • وضعیت («وضعیت» و وضعیت محلی در مقابل وضعیت جهانی و اشیاء و آرایه‌های در حال تغییر چیست) State (What Is 'State' & Local vs Global State & Mutating Objects And Arrays)

  • مرتب سازی جزء 2 - [].sort() Sorting Component Part 2 - [].sort()

  • مؤلفه صفحه بندی (++ در مقابل -- & [].slice()) Pagination Component (++ vs -- & [].slice())

  • مؤلفه روتر (History & pushState() & Window Object & DOMContentLoaded) Router Component (History & pushState() & Window Object & DOMContentLoaded)

  • مورد فعال شغلی - [].find() Active Job Item - [].find()

  • مؤلفه نشانک‌ها (رویدادهای Mouseenter در مقابل Mouseleave و [].some() و [].filter()) Bookmarks Component (Mouseenter vs Mouseleave Events & [].some() & [].filter())

  • مولفه ذخیره سازی (LocalStorage for Persisting Data & Spread Operator ...) Storage Component (LocalStorage For Persisting Data & Spread Operator ...)

  • مراقبت از جزئیات Taking Care of Details

  • فرآیند ساخت (Webpack & Babel & PostCSS و بهینه‌سازی‌های دیگر) Build Process (Webpack & Babel & PostCSS & Other Optimizations)

مکمل Supplemental

  • تابع کمکی برای قالب بندی تاریخ - new Date() Helper Function for Formatting Date - new Date()

  • برای حلقه ([].forEach() و دیگر متدهای آرایه تقریباً به طور کامل جایگزین ()) For Loop ([].forEach() And Other Array Methods Almost Completely Replaced for())

  • قالب بندی در JS (نقطه ویرگول و برگه ها در مقابل فضاها) Formatting in JS (Semicolons & Tabs vs Spaces)

بسته شدن Closing

  • تبریک می گویم! (سخنرانی پاداش) Congratulations! (BONUS Lecture)

نمایش نظرات

آموزش جاوا اسکریپت حرفه ای 2023 (از مبتدی تا پیشرفته!)
جزییات دوره
20 hours
122
Udemy (یودمی) Udemy (یودمی)
(آخرین آپدیت)
970
4.7 از 5
ندارد
دارد
دارد
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

ByteGrad by Wesley ByteGrad by Wesley

توسعه دهنده وب و مدرس