آموزش Electron & React JS: ساخت برنامه چت دسکتاپ با جاوا اسکریپت

Electron & React JS: Build Desktop Chat App with Javascript

نکته: آخرین آپدیت رو دریافت میکنید حتی اگر این محتوا بروز نباشد.
نمونه ویدیوها:
توضیحات دوره: برنامه چت React.js را با Electron ایجاد کنید. از Firebase به عنوان پایگاه داده استفاده کنید. برنامه دوم ChatGPT + Electron با تایپ اسکریپت درک نحوه عملکرد Electron JS ایجاد یک برنامه چت واقعی ایجاد برنامه های بومی با جاوا اسکریپت، Html + CSS آموزش استفاده از React JS در ترکیب با Electron پیش نیازها:درک پایه JS(ES6) ) و React JS مورد نیاز است

الکترون:

اگر می توانید یک وب سایت بسازید، می توانید یک برنامه دسکتاپ بسازید. Electron چارچوبی برای ایجاد برنامه های کاربردی بومی با فناوری های وب مانند جاوا اسکریپت، HTML و CSS است. از قسمت های سخت مراقبت می کند تا بتوانید روی هسته برنامه خود تمرکز کنید.

React JS:

React ایجاد UI های تعاملی را بدون دردسر می کند. نماهای ساده را برای هر حالت در برنامه خود طراحی کنید، و React زمانی که داده‌های شما تغییر می‌کند، مؤلفه‌های مناسب را به‌روزرسانی و ارائه می‌کند.

Firebase:

Firebase عملکردهایی مانند تجزیه و تحلیل، پایگاه داده، پیام رسانی و گزارش خرابی را در اختیار شما قرار می دهد تا بتوانید به سرعت حرکت کنید و روی کاربران خود تمرکز کنید.


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


در بخش دوم، چندین نما مانند صفحه اصلی، چت و تنظیمات ایجاد می‌شود و یک سیستم مسیریابی برای امکان پیمایش بین نماها یکپارچه می‌شود. دانش آموزان یاد خواهند گرفت که چگونه از پرس و جوهای Firestore و دستکاری داده ها استفاده کنند. معماری redux مدیریت حالت را مدیریت می کند و داده ها را در پایگاه داده Firestore ذخیره می کند.


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


بخش چهارم میان‌افزار redux و ویژگی Notification را پوشش می‌دهد که می‌تواند تغییرات در وضعیت آنلاین/آفلاین کاربر را تشخیص دهد.


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


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


بخش هفتم شامل تنظیمات کوچک در محیط Electron، از جمله ایجاد منوی برنامه، افزودن نماد سینی، و تغییر نماد برنامه و صفحه نمایش است. سخنرانی‌های نهایی پیکربندی ساخت را پوشش می‌دهد و به برنامه اجازه می‌دهد تا در فایل‌های اجرایی ویندوز، لینوکس و macOS ساخته شود.


این دوره اکنون شامل یک برنامه اضافی است که به دانش آموزان می آموزد که چگونه یک برنامه را با استفاده از Electron Forge مقداردهی اولیه کنند. این برنامه با استفاده از React و Typescript ساخته شده است و دانش‌آموزان همچنین در مورد ادغام ChatGPT در برنامه اطلاعات کسب خواهند کرد.


در سخنرانی‌ها موارد بسیار بیشتری پوشش داده شده است و دانش‌آموزان این فرصت را خواهند داشت تا روی برنامه‌ای کار کنند که امیدواریم از آن لذت ببرند. مربی امیدوار است دانش آموزان را در این دوره ببیند.


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

معرفی Introduction

  • معرفی Introduction

  • بخش جدید اضافه شد New Section Added

  • چگونه مسائل را حل کنیم How to solve issues

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

  • بخش مقدمه Section Introduction

  • Electron را راه اندازی کنید Initialize Electron

  • ایجاد پنجره مرورگر Create browser window

  • ویژگی های الکترون Features of electron

  • اطلاعات بیشتر درباره Electron & Notifications More about Electron & Notifications

  • کروم در مقابل الکترون Chrome vs Electron

  • یکپارچه سازی گره Node integration

  • پاکسازی کد Code cleanup

  • React را نصب کنید Install React

  • بسته وب Webpack

  • نقشه منبع + اشکال زدایی Source Map + Debugging

  • بارگذاری مجدد الکترون Electron reload

  • ارتباط اصلی و رندر Main & Renderer communication

  • پیش بارگیری کنید Preload

  • پل زمینه Context bridge

کار بر روی Layout Working on Layout

  • بخش مقدمه Section Introduction

  • طرح اولیه Initial layout

  • جداسازی به اجزا Separation to components

  • روتر Router

  • دکمه برگشت + بازدیدهای بیشتر Back button + More views

  • نمای چت Chat view

  • پیوند به چت Link to the chat

  • Firebase Firebase

  • داده ها را از Firestore دریافت کنید Get data from Firestore

  • Dotenv Dotenv

  • فروشگاه اولیه Initial store

  • اقدامات ایجاد کنید Create actions

  • کاهش دهنده چت Chat reducer

  • نمایش چت ها در لیست Display chats in the list

احراز هویت Authentication

  • بخش مقدمه Section Introduction

  • نمای خوش آمد گویی Welcome view

  • جابجایی بین فرم ها Toggling between forms

  • ارزش را از فرم دریافت کنید Get value from the form

  • ثبت نام کاربر Register a user

  • پروفایل کاربری ایجاد کنید Create user profile

  • به تغییرات auth گوش دهید Listen to auth changes

  • کاهش دهنده احراز هویت Auth reducer

  • خروج Logout

  • وارد شدن Login

  • در حال بارگذاری نمای Loading view

  • کاربر در نوار ناوبری User in the navbar

  • احیاء کننده احراز هویت Auth reducer refactor

  • نمایش خطاها Displaying errors

  • ورود و ثبت نام ایجاد کننده کاهش دهنده Login & Register reducer creator

  • کاهش دهنده خطای قابل استفاده مجدد Reusable error reducer

  • کاهش دهنده واکشی قابل استفاده مجدد Reusable fetching reducer

  • ارائه عمل به کاربر Provide user to action

  • بازساز برنامه و ارائه دهنده فروشگاه App refactor and store provider

  • مسیر احراز هویت Auth route

  • بهبودهای UX UX Improvements

  • رفع مشکل پس از خروج Fix after logout

  • چیدمان HOC Layout HOC

میان افزارها و اعلان ها Middlewares & Notifications

  • بخش مقدمه Section Introduction

  • بررسی کنید که آیا برنامه متصل است یا خیر Check if application is connected

  • اقدام برای بررسی اتصال Action to check connection

  • کاهش دهنده اتصال Connection reducer

  • میان افزارها Middlewares

  • ابزار اطلاع رسانی Notification util

  • نمایش اعلان Display notification

مدیریت چت Chat Management

  • بخش مقدمه Section Introduction

  • چت ایجاد نمای Chat create view

  • چت ایجاد فرم Chat create form

  • یک چت ایجاد کنید Create a chat

  • پس از ایجاد به چت بپیوندید Join the chat after create

  • چت ها را مرتب کنید Sort chats

  • نمایش چت های مرتب شده Display sorted chats

  • پس از خروج، حالت را مجدداً راه اندازی کنید Restart the state after logout

  • به چت بپیوندید Join chat

  • به کاهش دهنده چت بپیوندید Join the chat reducer

  • در چت مشترک شوید Subscribe to the chat

  • کاربران را از چت استخراج کنید Extract users from the chat

  • چت فعال را روی کاهش دهنده تنظیم کنید Set active chat to reducer

  • نمایش کاربران ملحق شده Display joined users

  • مشترک شدن در نمایه Subscribe to profile

  • لغو اشتراک از کاربر Unsubscribe from user

  • اتصال کاربر را بررسی کنید Check user connection

  • ذخیره وضعیت آنلاین کاربر در FS Save user online status to FS

  • رفع وضعیت آنلاین پس از خروج Fixing online status after logout

  • نمایش تغییرات حالت Displaying state changes

  • بهبودهای چت را بارگیری کنید Load chat improvements

پیام رسانی Messaging

  • بخش مقدمه Section Introduction

  • جزء پیام رسان Messenger component

  • شیء پیام با مهر زمان Message object with timestamp

  • اقدام ارسال پیام Send message action

  • مشترک شدن در پیام Subscribe to message

  • نمایش پیام ها Display messages

  • استخراج پیام با نویسنده Extract message with author

  • ثبت اشتراک پیام Register message subscription

  • بهبود پیام های UX UX messages improvements

  • در پایین اسکرول کنید Scroll on bottom

  • پاکسازی پس از خروج از سیستم Cleanup after logout

  • لغو اشتراک از چت Unsubscribe from chat

  • نمای تنظیمات Settings view

  • کاهش دهنده تنظیمات Settings reducer

  • داده ها را در حافظه محلی ذخیره کنید Store data in local storage

  • تنظیمات اولیه را بارگیری کنید Load initial settings

  • ذخیره سازی سفارشی Custom storage

  • نمایش تغییرات استایل Display styling changes

  • تنظیمات به پایان می رسد Settings wrap up

  • رفع اتصال Connection fix

ویژگی های Electron Native Electron Native Features

  • بخش مقدمه Section Introduction

  • منوی برنامه App menu

  • پنجره های متعدد Multiple windows

  • نماد داک Dock icon

  • منوی سینی Tray menu

  • صفحه معرفی Splash screen

  • بهبود صفحه نمایش اسپلش Splash screen improvements

  • تولید پک وب Webpack production

  • برنامه را بسازید Build the app

  • تست برنامه و پایان دوره App testing & Course Ending

پاداش: برنامه ChatGPT Bonus: ChatGPT App

  • برنامه Init Init App

  • نگرانی های امنیتی Security Concerns

  • React را ادغام کنید Integrate React

  • به‌روزرسانی‌های برنامه React React App Updates

  • طرح اولیه + توضیح مدل Basic Layout + Model Explanation

  • دریافت ارزش سریع Get Prompt Value

  • رسیدگی به ارسال Handle Submit

  • پیام ها Messages

  • نوع پیام Message Type

  • شبیه سازی پاسخ Simulate response

  • جزء مورد پیام Message item component

  • جلوه ماشین تحریر Typewriter effect

  • ماشین تحریر فقط برای هوش مصنوعی Typewriter only for AI

  • پل زمینه Context Bridge

  • نوع الکترون را شرح دهید Describe electron type

  • ارزش فرآیند اصلی را دریافت کنید Get value to main process

  • پاسخ را پس بگیرید Get response back

  • پیام خالی را بررسی کنید Check empty message

  • راه اندازی حساب AI باز Setup Open AI Account

  • توضیحات ChatGPT ChatGPT Explanations

  • پاسخ از هوش مصنوعی دریافت کنید Get response from AI

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

  • نمایش پیام خطا Display Error Message

  • اعلان بهتر ایجاد کنید Create beter prompt

  • اپلیکیشن را منتشر کنید Publish the app

نمایش نظرات

آموزش Electron & React JS: ساخت برنامه چت دسکتاپ با جاوا اسکریپت
جزییات دوره
18 hours
138
Udemy (یودمی) Udemy (یودمی)
(آخرین آپدیت)
2,119
4.8 از 5
دارد
دارد
دارد
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Eincode by Filip Jerga Eincode by Filip Jerga

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

Filip Jerga Filip Jerga

مهندس نرم افزار نام من فیلیپ جرگا است و من یک مهندس نرم افزار با تجربه و توسعه دهنده آزاد هستم. من دارای مدرک کارشناسی ارشد در هوش مصنوعی و چندین سال تجربه کار بر روی طیف گسترده ای از فناوری ها و پروژه ها از توسعه ++C برای دستگاه های اولتراسوند گرفته تا برنامه های موبایل و وب مدرن در React و Angular هستم. در طول زندگی حرفه‌ای‌ام، دانش فنی پیشرفته و توانایی توضیح موضوعات برنامه‌نویسی را به وضوح و با جزئیات برای مخاطبان گسترده کسب کرده‌ام. از شما دعوت می‌کنم دوره آموزشی خود را بگذرانید، جایی که من تلاش زیادی کرده‌ام تا مفاهیم مهندسی وب و نرم‌افزار را به صورت مفصل، عملی و قابل درک توضیح دهم.