آموزش مسترکلاس الکترون: ساخت اپلیکیشن‌های دسکتاپ با جاوا اسکریپت - آخرین آپدیت

دانلود Electron Masterclass: Build Desktop Apps with JavaScript

نکته: ممکن هست محتوای این صفحه بروز نباشد ولی دانلود دوره آخرین آپدیت می باشد.
نمونه ویدیوها:
توضیحات دوره: دوره جامع Electron برای توسعه اپلیکیشن‌های دسکتاپ چندپلتفرمی با استفاده از HTML، JavaScript و CSS توسعه و لانچ اپلیکیشن‌های دسکتاپ چندپلتفرمی با استفاده از Electron تسلط بر Electron از مفاهیم ابتدایی تا مباحث پیشرفته یکپارچه‌سازی فریم‌ورک‌های UI مانند React با Electron توسعه تست‌های خودکار برای اپلیکیشن‌های Electron با استفاده از Playwright بیلد کردن، امضای کد (Code Signing) و آماده‌سازی پروژه برای محیط Production پیشنیازها: دانش پایه توسعه وب آشنایی با Angular و React یک مزیت است اما الزامی نیست

آیا می‌خواهید اپلیکیشن‌های دسکتاپ چندپلتفرمی را با استفاده از JavaScript، HTML و CSS بسازید؟  این دوره دقیقاً برای شماست!

به کامل‌ترین و به‌روزترین دوره Electron در Udemy خوش آمدید!


در این دوره، ما عمیقاً وارد دنیای توسعه با Electronمی‌شویم و همه چیز را از پایه تا مباحث پیشرفته پوشش می‌دهیم —تمام این مسیر از طریق پروژه‌های عملی، مثال‌های واقعی و تمرینات کاربردی خواهد بود.


پس از اتمام این دوره، شما دانش و مهارت‌های عملی لازم برای شروع حرفه‌ای ساخت اپلیکیشن‌های دسکتاپ چندپلتفرمی با Electron را خواهید داشت.


این دوره جامع برای توسعه‌دهندگان وبطراحی شده است که می‌خواهند با استفاده از مهارت‌های فعلی خود در JavaScript، HTML و CSS، اپلیکیشن‌ها و بازی‌های دسکتاپبسازند، یا برای توسعه‌دهندگان Electronکه قصد دارند درک خود از این پلتفرم را عمیق‌تر و بهبود ببخشند.


در این دوره، طیف گسترده‌ای از مباحث را خواهید آموخت، از جمله:

  • مبانی Electron و نحوه عملکرد آن

  • درک فرآیندهای Main و Rendererدر Electron و نحوه ارتباط آن‌ها از طریق IPC

  • مباحث و ویژگی‌های پیشرفته Electron

  • ذخیره‌سازی داده‌ها در Electron

  • نحوه بیلد کردن و امضای کد

  • نحوه انتشار اپلیکیشن‌ها و فعال‌سازی آپدیت‌های خودکار نسخه

  • یکپارچه‌سازی Electron با React.js و Angular.js

  • تست‌نویسی با Playwright

  • اتصال به دیتابیس‌ها با استفاده از Firebase

  • توسعه بازی در Electron با استفاده از Phaser.js


سرفصل‌ها با جزئیات بیشتر:

  • Electron چیست و چگونه کار می‌کند

  • راه‌اندازی محیط توسعه

  • ساختار اپلیکیشن Electron و فرآیند Main

  • ایجاد و مدیریت BrowserWindows

  • استفاده از Nodemonو Live Reload

  • کار با منوهای اپلیکیشن و میان‌برهای کیبورد

  • ساخت اپلیکیشن‌های Tray-based

  • ارتباط بین فرآیندها (IPC)

  • Dialogsو یکپارچه‌سازی با سیستم فایل (File System)

  • منوهای راست‌کلیک (Context Menus) و یکپارچه‌سازی با Shell

  • استفاده امن از اسکریپت‌های preload

  • دیباگ کردن اپلیکیشن‌های Electron

  • نوشتن تست‌های End-to-End با استفاده از Playwright

  • بسته‌بندی و انتشار اپلیکیشن‌های Electron

  • یکپارچه‌سازی React و Vite با Electron

  • یکپارچه‌سازی Electron با Angular.js

  • پخش موسیقی در Electron: یکپارچه‌سازی با Amplitude.js

  • اتصال به دیتابیس‌ها و یکپارچه‌سازی با Firebase

  • توسعه بازی با Electron:یکپارچه‌سازی با Phaser.js

در طول این دوره، شما پروژه‌های عملیمانند موارد زیر را خواهید ساخت:

  • یک ابزار هشینگ (Hashing Utility)

  • یک تایمر پومودورو (Pomodoro Timer)

  • یک ویرایشگر کد (Code Editor)

  • یک اپلیکیشن قیمت کالاهای اساسی

  • یک بازی فضایی (Spaceware Game)

  • یک اپلیکیشن چت (Chat Application)

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

مطمئنم که عاشق این دوره خواهید شد و به یک توسعه‌دهنده حرفه‌ای Electronتبدیل می‌شوید یا اگر تجربه دارید، مهارت‌های خود را به طور قابل توجهی ارتقا می‌دهید.


پس همین امروز در این مسیر به من بپیوندید و بر توسعه با Electronمسلط شوید!


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

مقدمه Introduction

  • مقدمه Introduction

  • الکترون چیست؟ What is Electron ?

  • راه‌اندازی محیط Environment Setup

  • مخزن سورس کد دوره Course Source Code Repository

مبانی الکترون Electron Basics

  • مقدمه بخش Section Introduction

  • اطلاعات سریع برای تجربه بهتر از دوره Quick Information for a Better Course Experience

  • مخزن سورس کد اولین پروژه First Project Source Code Reporitory

  • راه‌اندازی پروژه Setting Up the Project

  • پیاده‌سازی فرآیند اصلی (Main Process) Implementing the Main Process

  • پیاده‌سازی فرآیند رندر (Renderer Process) Implementing the Renderer Process

  • استفاده از پروژه Quick Starter الکترون Using the Electron Quick Starter Project

  • درک ساختار پروژه الکترون Understanding Electron's Project Structure

  • درک فایل فرآیند اصلی Understanding the Main Process File

  • نوشتن اولین تغییرات کد Writing the First Code Change

  • بازگذاری خودکار کدها با nodemon Auto Reload Code Changes using "nodemon"

  • مخزن سورس کد تمرینات Source Code Repository for the Exercises

  • خلاصه بخش Section Summary

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

  • تمرین ۱: ایجاد و پیکربندی پروژه Exercise 1: Creating and Configuring a Project

ساخت پنجره‌ها با استفاده از کلاس BrowserWindow Windows Creation using the "BrowserWindow" Class

  • مقدمه بخش Section Introduction

  • ویژگی‌های پایه پنجره‌ها Basic Windows Properties

  • تنظیم عنوان پنجره Setting the Window Title

  • تمرین ۲: پیکربندی پنجره اصلی Exercise 2: Configuring the Main Window

  • ساخت پنجره‌های بدون فریم (Frameless) Creating Frameless Windows

  • قابلیت جابجایی پنجره اپلیکیشن (Draggable) Making the Application Window Draggable

  • تمرین ۳: استفاده از پنجره بدون فریم Exercise 3: Using a Framless Window

  • ساخت پنجره‌های شفاف Creating Transparent Windows

  • ساخت پنجره‌های فرزند Creating Children Windows

  • درک رویدادهای BrowserWindow Understanding the "BrowserWindow" Events

  • کار با متدهای BrowserWindow Working with the "BrowserWindow" Methods

  • تمرین ۴: نمایش پنجره فرزند Exercise 4: Displaying a Child Window

  • موقعیت‌دهی و تغییر اندازه پنجره Window Positioning and Resizing

  • پنجره‌های مودال (Modal) Modal Windows

  • خلاصه بخش Section Summary

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

  • مرجع BrowserWindow BrowserWindow

پروژه: اپلیکیشن هشینگ Project: Hashing App

  • سورس کد پروژه Project Source Code

  • بررسی کلی اپلیکیشن App Overview

  • ساخت رابط کاربری (UI) اپلیکیشن Creating the App UI

  • استایل‌دهی به اپلیکیشن Styling the App

  • پیاده‌سازی عملکرد اپلیکیشن Implementing the App Functionality

  • بیلد کردن اپلیکیشن Building the App

مدیریت رویدادهای پنجره Handling Windows Events

  • مقدمه‌ای بر رویدادهای BrowserWindow Introduction to BrowserWindow Events

  • رویداد ready to show The 'ready-to-show' Event

  • رویدادهای close و closed The 'close' and 'closed' Events

  • رویدادهای focus و blur The 'focus' and 'blur' Events

  • رویدادهای resize و move The 'resize' and 'move' Events

  • رویدادهای unresponsive و responsive The 'unresponsive' and 'responsive' Events

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

  • مرجع رویدادهای BrowserWindow BrowserWindow Events

چرخه حیات اپلیکیشن در الکترون Application Lifecycle in Electron

  • مقدمه‌ای بر چرخه حیات اپلیکیشن‌های الکترون Introduction to the Electron Applications Lifecycle

  • ماژول app و رویدادهای آن The "app" Module and Its Events

  • مدیریت رویدادهای اپلیکیشن Handling the Application Events

  • تمرین ۱۰: ساخت یک اپلیکیشن ساده ردیاب نشست (Session Tracker) Exercise 10: Creating a Simple Session Tracker App

  • خلاصه بخش Section Summary

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

  • چرخه حیات اپلیکیشن در الکترون Applications Lifecycle in Electron

منوها در الکترون Menus in Electron

  • مقدمه‌ای بر سیستم منوی الکترون Introduction to Electron’s Menu System

  • ساخت منوها با استفاده از کلاس Menu Creating Menus using the "Menu" Class

  • ساخت آیتم‌های منو با کلاس MenuItem Creating Menu Items using the "MenuItem" Class

  • کار با متدهای استاتیک کلاس Menu Working with the "Menu" Class Static Methods

  • ساخت یک منوی پایه برای اپلیکیشن Building a Basic Application Menu

  • کار با متدهای نمونه (Instance) کلاس Menu Working with the "Menu" Class Instance Methods

  • افزودن میان‌برهای کیبورد (Accelerators) Adding Keyboard Shortcuts (Accelerators)

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

  • مرجع منوها Menus

ماژول IPC The IPC Module

  • مقدمه‌ای بر IPC Introduction to the IPC

  • ارسال پیام از فرآیند اصلی با ماژول ipcMain Sending Messages from the Main Process using the "ipcMain" Module

  • ارسال پیام از رندر با ماژول ipcRenderer Sending Messages from the Renderer using the "ipcRenderer" Module

  • پیام‌رسانی Fire and Forget با IPC Fire-and-Forget Messaging with IPC

  • پیام‌رسانی درخواست/پاسخ (Request/Response) با IPC Request/Response Messaging with IPC

  • ارتباط همزمان (Synchronous) در IPC: روش قدیمی (توصیه نمی‌شود اما برای یادگیری مفید است) IPC Synchronous Communication - The Old Way (Not Recommended but Nice to Learn)

  • درک شیء event Understanding the "event" Object

  • ارتباط ناهمزمان (Asynchronous) در IPC IPC Asynchronous Communication

  • تمرین ۵: استفاده از IPC برای ساخت پنجره‌های فرزند Exercise 5: Using IPC to Create Children Windows

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

  • مرجع IPC IPC

پروژه: تایمر پومودورو Project: Pomodoro Timer

  • سورس کد پروژه Project Source Code

  • بررسی کلی اپلیکیشن App Overview

  • ساخت رابط کاربری Creating the UI

  • افزودن منو Adding the Menu

  • پیاده‌سازی فرآیند اصلی Implementing the Main Process

  • پیاده‌سازی فرآیند رندر Implementing the Renderer Process

ماژول‌های فرآیند اصلی Main Process Modules

  • کار با ماژول clipboard Working with the "clipboard" Module

  • کار با تم‌های کرومیوم با nativeTheme Working with Chromium Themes using "nativeTheme"

  • ارسال درخواست‌های HTTP/HTTPS با ماژول net Making HTTP/HTTPS Requests with the "net" Module

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

دیالوگ‌های فایل و پیام با ماژول Dialog File and Message Dialogs using the "Dialog" Module

  • مقدمه‌ای بر ماژول Dialog Introduction to the Dialog Module

  • دیالوگ باز کردن فایل (File Open) The File Open Dialog

  • تمرین ۶: باز کردن یک فایل متنی Exercise 6: Opening a Text File

  • دیالوگ ذخیره فایل (File Save) The File Save Dialog

  • تمرین ۷: ذخیره در یک فایل متنی Exercise 7: Saving to a Text File

  • دیالوگ پیام (Message Dialog) The Message Dialog

  • تمرین ۸: استفاده از دیالوگ‌های پیام Exercise 8: Using Message Dialogs

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

  • مرجع Dialog Dialog

پروژه: ویرایشگر کد Project: Code Editor

  • سورس کد پروژه Project Source Code

  • بررسی کلی پروژه Project Overview

  • راه‌اندازی پروژه و ساخت UI Project Setup and Creating the UI

  • استفاده از CodeMirror Using CodeMirror

  • استایل‌دهی به اپلیکیشن Styling the App

  • پیاده‌سازی فرآیند رندر Renderer Process Implementation

  • پیاده‌سازی فرآیند اصلی Main Process Implementation

ویژگی‌های پیشرفته الکترون Advanced Electron Features

  • اسکریپت Preload The Preload Script

  • تمرین ۹: استفاده از preload.js و غیرفعال کردن Node Integration Exercise 9: Using "preload.js" and Disabling Node Integration

  • ساخت منوهای راست‌کلیک Creating Context Menus

  • ماژول Shell The Shell Module

  • دیباگ کردن اپلیکیشن‌های الکترون Debugging Electron Applications

  • [تمرین] بهبود اپلیکیشن ویرایشگر کد [Practice] Improving the Code Editor App

  • استفاده از System Tray Using the System Tray

  • ضبط صفحه با ماژول desktopCapturer Capturing Screens with the "desktopCapturer" Module

  • ثبت میان‌برهای کیبورد سراسری (Global) Registering Global Keyboard Shortcuts

  • نمایش اطلاعات با ماژول screen Display Information using the "screen" Module

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

  • مرجع ویژگی‌های پیشرفته Advanced Features

تعامل با صفحات وب رندر شده با WebContents Interacting with Rendered Web Pages using the WebContents

  • مقدمه‌ای بر کلاس WebContents در الکترون Introduction to the "WebContents" Class in Electron

  • کنترل ناوبری (Navigation Control) Navigation Control

  • اجرای برنامه نویسی شده جاوا اسکریپت در رندر Executing JavaScript in Renderer Programmatically

  • ارسال پیام از فرآیند اصلی به رندر با WebContents Sending Messages From the Main Process to the Renderer using WebContents

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

پروژه: ضبط صفحه نمایش Project: Screen Capturer

  • سورس کد پروژه Project Source Code

  • بررسی کلی اپلیکیشن App Overview

  • ساخت رابط کاربری اپلیکیشن Creating the App UI

  • پیاده‌سازی منطق اپلیکیشن Implementing the App Logic

  • ساخت System Tray Creating the System Tray

بسته‌بندی و انتشار اپلیکیشن‌های الکترون Packaging and Releasing Electron Applications

  • بسته‌بندی اپلیکیشن‌های الکترون با Electron Builder Packaging Electron Apps using Electron Builder

  • پیکربندی آیکون اپلیکیشن Configuring the App Icon

  • امضای کد (Code Signing) Signing the Code

  • پیکربندی تارگت‌های بیلد برای ویندوز/مک/لینوکس Configuring Build Targets for Win/MacOS/Linux

  • آماده‌سازی اپلیکیشن برای انتشار در گیت‌هاب Preparing the App for Releasing on GitHub

  • ساخت اولین نسخه انتشار (Release) Creating our First Release

  • خودکارسازی انتشار اپلیکیشن با گیت‌هاب و Electron Builder Automating App Releasing using GitHub and Electron Builder

  • آپدیت خودکار با Electron Updater Auto Updates using Electron Updater

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

  • مرجع بیلد اپلیکیشن‌های الکترون Building Electron Applications

ذخیره‌سازی داده‌ها در الکترون Data Storage in Electron

  • بررسی کلی گزینه‌های ذخیره‌سازی در الکترون Overview of Storage Options in Electron

  • ذخیره داده‌ها با localStorage در الکترون Storing Data using "localStorage" in Electron

  • ذخیره داده‌های نشست با session در الکترون Storing Session Data using "session" in Electron

  • نحوه ذخیره اشیاء (Objects) از طریق localStorage و session How to Store Objects via "localStorage" and "session"

  • کار با کوکی‌ها با استفاده از ماژول session Working with Cookies Using the "session" Module

  • استفاده از IndexedDB به عنوان دیتابیس برای اپلیکیشن‌های الکترون Using IndexedDB as a Database for Electron Applications

  • یکپارچه‌سازی SQLite SQLite Integration

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

تست خودکار با Playwright Automated Testing with Playwright

  • مقدمه‌ای بر تست End to End (E2E) با استفاده از Playwright Introduction to End-to-End (E2E ) Testing using Playwright

  • نصب Playwright و ایجاد فایل تست Installing Playwright and Creating a Test File

  • نوشتن و اجرای یک تست Writing and Executing a Test

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

  • مرجع تست E2E E2E Testing

یکپارچه‌سازی React با الکترون توسط Vite Integrating React with Electron using Vite

  • الکترون، ری‌اکت و Vite Electron, React and Vite

  • بررسی کلی پروژه Project Overview

  • راه‌اندازی پروژه Setting Up the Project

  • پیاده‌سازی کامپوننت App Implementing App Component

  • ساخت کامپوننت Card Creating the Card Component

  • استایل‌دهی به کامپوننت Card Styling the Card Component

  • حذف منوی پیش‌فرض و تنظیم عنوان Removing the Default Menu and Setting the Title

  • افزودن تست‌های E2E Adding E2E Tests

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

  • بیلد کردن پروژه Building the Project

یکپارچه‌سازی الکترون با انگولار Integrating Electron with Angular

  • مقدمه بخش Introduction to the Section

  • ساختاربندی پروژه با انگولار و الکترون Scaffolding a Project using Angular and Electron

  • استفاده از Hot Reloading در انگولار Using Angular Hot Reloading

  • استفاده از کامپوننت‌های Angular Material Using Angular Material Components

  • کار با Routing در انگولار Working with Angular Routing

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

  • بیلد کردن اپلیکیشن Building the Application

پخش موسیقی در الکترون: یکپارچه‌سازی با Amplitude Playing Music in Electron: Integrating with Amplitue

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

  • پخش فایل‌های موسیقی Playing Music Files

  • استفاده از دکمه‌های کنترل بیشتر Using More Control Buttons

  • نوار پیشرفت موسیقی و نمایش متادیتا Music Progress Bar and Displaying Metadata

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

اتصال به دیتابیس: یکپارچه‌سازی با Firebase Connecting to a Database: Integrating with Firebase

  • مقدمه و بررسی کلی Introduction and Overview

  • راه‌اندازی Firebase Setup Firebase

  • راه‌اندازی انگولار و الکترون Setup Angular and Electron

  • افزودن کامپوننت‌های Angular Material Adding Angular Material Components

  • پیاده‌سازی UI کامپوننت لاگین Implementing the Login Component UI

  • پیاده‌سازی ورود کاربر با Firebase Authentication Implementing User Login using Firebase Authentication

  • پیکربندی Realtime Database و افزودن گروه‌های چت Configuring the Realtime Database and Adding Chat Groups

  • نمایش پیام‌های گروهی Displaying Group Messages

  • ارسال پیام‌های گروهی Sending Group Messages

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

توسعه بازی با الکترون: یکپارچه‌سازی با Phaser.js Game Development with Electron: Integrating with Phaser.js

  • مقدمه و بررسی کلی پروژه Introduction and Project Overview

  • ساختاربندی پروژه Scaffolding the Project

  • پیکربندی الکترون Configuring Electron

  • پیکربندی بازی Configuring the Game

  • بارگذاری Assets Loading the Assets

  • کنترل سفینه فضایی Controlling the Spaceship

  • افزودن شلیک گلوله‌ها Adding Bullets Shooting

  • دشمنان و برخوردها (Collisions) Enemies and Collisions

  • بیلد کردن بازی Building the Game

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

گام‌های بعدی What's Next?

  • به یادگیری ادامه دهید! Continue Learning!

نمایش نظرات

آموزش مسترکلاس الکترون: ساخت اپلیکیشن‌های دسکتاپ با جاوا اسکریپت
جزییات دوره
17 hours
182
Udemy (یودمی) Udemy (یودمی)
(آخرین آپدیت)
3,452
4.7 از 5
دارد
دارد
دارد
Ahmed Elsakka
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Ahmed Elsakka Ahmed Elsakka

مهندس نرم افزار در آمازون