آموزش ساخت برنامه های رابط کاربری گرافیکی با Fyne and Go (Golang)

Building GUI Applications with Fyne and Go (Golang)

نکته: آخرین آپدیت رو دریافت میکنید حتی اگر این محتوا بروز نباشد.
نمونه ویدیوها:
توضیحات دوره: با نحوه ساخت برنامه های دسکتاپ سریع و کارآمد برای Mac، Windows و Linux با استفاده از Go and Fyne آشنا شوید. آموزش ساخت برنامه های رابط کاربری گرافیکی با استفاده از Go و Fyne آموزش نحوه نمایش ویجت های رایج برنامه یاد بگیرید چگونه وضعیت برنامه خود را با پایگاه داده تعبیه شده ذخیره کنید یاد بگیرید چگونه منابع تماس برنامه خود را در اینترنت داشته باشید پیش نیازها:آشنایی با زبان برنامه نویسی Go کامپیوتر مک یا ویندوز و اتصال به اینترنت

بسیاری از توسعه دهندگان از ایده نوشتن یک برنامه دسکتاپ می ترسند و این احتمالاً به دلیل ظهور برنامه های کاربردی مبتنی بر وب است. در واقع، برخی از برنامه‌های علوم کامپیوتر دانشگاه حتی یک دوره کامل را به توسعه برنامه‌های رابط کاربری گرافیکی اختصاص نمی‌دهند، و این مایه تاسف است.

Go، که گاهی به آن Golang نیز گفته می شود، در دهه گذشته به سرعت محبوبیت پیدا کرده است و برای ساخت API های REST، برنامه های کاربردی back end و نرم افزارهای شبکه بسیار محبوب شده است. با این حال، یکی از سوالاتی که به صورت آنلاین مطرح می شود، این است که چگونه می توان با استفاده از Go یک برنامه دسکتاپ ساخت. برای مدتی طولانی، پاسخ پیش‌فرض استفاده از اتصالات Qt و CGO بود، اما چندین سال پیش پروژه جدیدی پدیدار شد - پروژه‌ای که ساخت برنامه‌های رابط کاربری گرافیکی در Go خالص را نسبتاً آسان می‌کند: پروژه Fyne. Fyne یک پروژه مبتنی بر این فرض است که باید رایگان و ساده باشد تا برنامه‌ای را توسعه دهد که بتواند بر روی همه پلتفرم‌ها بدون تغییر یا انطباق اجرا شود. برنامه‌های Fyne مانند برنامه‌های معمولی روی همه پلت‌فرم‌ها نصب می‌شوند و عملکرد عالی و تجربه کاربری قوی ارائه می‌کنند.

با Fyne، می‌توانید کد خود را یکبار در Go خالص بنویسید و برنامه‌هایی را که روی Mac OSX، Windows، Linux، دستگاه‌های Android، دستگاه‌های iOS و به‌عنوان WebAssembly در مرورگر اجرا می‌شوند، ارائه دهید.

این دوره برای پوشش دادن اصول اولیه ساخت یک برنامه رابط کاربری گرافیکی در Pure Go در نظر گرفته شده است. ما پوشش خواهیم داد:

ساخت برنامه‌های دسک‌تاپ: ما دو می‌سازیم: ویرایشگر MarkDown و برنامه‌ای که به کاربران امکان می‌دهد سرمایه‌گذاری‌های طلا (تخیلی) را ردیابی کنند و اطلاعات بی‌درنگ قیمت طلا را دریافت کنند.

ما پوشش خواهیم داد:

  • نحوه کار با Fyne Canvas

  • نحوه کار با Fyne Windows

  • نحوه استفاده (و سفارشی‌سازی) ویجت‌ها، از جمله گفتگوها، متن، برچسب‌ها، فیلدهای ورودی، فرم‌ها و جداول

  • نحوه تأیید اعتبار ورودی کاربر

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

  • نحوه استفاده از ظروف برای چیدمان وسایل در پنجره

  • نحوه جاسازی پایگاه داده sqlite در برنامه دسکتاپ

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

  • نحوه خواندن و نوشتن فایل ها از برنامه شما

  • نحوه خواندن و نوشتن تنظیمات برگزیده

  • نحوه دسته بندی دارایی ها (مانند تصاویر) در یک برنامه Fyne

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

  • نحوه امضای یک برنامه Mac OS X برای توزیع



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

معرفی Introduction

  • معرفی Introduction

  • درمورد من About me

  • در حال نصب Go Installing Go

  • نصب کد ویژوال استودیو Installing Visual Studio Code

  • در حال نصب Make Installing Make

  • درخواست کمک Asking for help

  • اشتباهات. همه ما آنها را می سازیم. Mistakes. We all make them.

شروع کار با فاین Getting Started with Fyne

  • نصب ابزار لازم Installing the necessary tools

  • واجب "سلام ای دنیا!" کاربرد The obligatory "Hello, world!" application

  • ساختار یک برنامه کاربردی Fyne The structure of a Fyne application

  • افزودن یک ظرف ساده، یک ورودی و دکمه Adding a simple container, an entry, and button

پروژه اول: ساخت یک ویرایشگر Markdown First Project: Building a Markdown Editor

  • آنچه در این بخش به آن خواهیم پرداخت What we'll cover in this section

  • شروع کار با ویرایشگر MarkDown Getting started with the MarkDown editor

  • اضافه کردن یک منوی اصلی به برنامه ما Adding a Main Menu to our Application

  • عملکردی کردن آیتم های منو: ذخیره فایل ها Making Menu Items Functional: Saving files

  • باز کردن فایل ها Opening files

  • افزودن فیلتر به دستور open file Adding a filter to the open file command

  • کاربردی کردن آیتم منوی Save Making the Save menu item functional

  • بسته بندی برنامه ما Packaging our application

  • نوشتن یک تست ساده برای برنامه ما Writing a simple test for our application

  • تعریف یک تم سفارشی Defining a custom theme

پروژه دوم: گلد واچر Second Project: GoldWatcher

  • آنچه در این بخش به آن خواهیم پرداخت What we'll cover in this section

  • راه اندازی یک اپلیکیشن ساده Setting up a simple application

  • شروع به کار در رابط کاربری Getting started on the user interface

  • دریافت قیمت فعلی طلا از یک سایت خارجی Getting the current price of gold from an external site

  • نوشتن تست برای منطق قیمت طلا ما Writing tests for our gold prices logic

  • ایجاد و بازگرداندن کانتینر قیمت ها Creating and returning the prices container

  • نمایش قیمت ها در پنجره برنامه ما Displaying prices in our application window

  • نوشتن یک تست برای تابع getPriceText Writing a test for the getPriceText function

  • ایجاد نوار ابزار Creating a toolbar

  • نوشتن تست برای نوار ابزار Writing a test for the toolbar

  • افزودن برگه های برنامه Adding application tabs

  • دریافت نمودار قیمت طلا Getting the Gold Price Chart

  • ایجاد و بازگرداندن ظرف priceChart Creating and returning the priceChart container

  • رسیدگی به وضعیت زمانی که هیچ شبکه ای در دسترس نیست Handling the situation when no network is available

  • نمایش نمودار در پنجره برنامه ما Displaying the chart in our application window

  • نوشتن تابعی که تمام اطلاعات قیمت طلا را تازه می کند Writing a function that will refresh all Gold price information

  • فعال کردن نماد تازه سازی در نوار ابزار Enabling the refresh icon in the toolbar

  • به روز رسانی قیمت طلا در پس زمینه Updating gold prices in the background

پروژه دوم: بخش دوم، اتصال به پایگاه داده Second Project: Part II, Connecting to a database

  • آنچه در این بخش به آن خواهیم پرداخت What we'll cover in this section

  • راه اندازی یک مخزن پایگاه داده Setting up a database repository

  • پیاده سازی مخزن sqlite Implementing a sqlite Repository

  • پیاده سازی مخزن sqlite، ادامه یافت Implementing a sqlite repository, continued

  • راه اندازی محیط تست ما برای db-sqlite.go Setting up our testing environment for db-sqlite.go

  • تست مخزن پایگاه داده sqlite ما Testing our sqlite database repository

  • اتصال برنامه ما به sqlite Connecting our application to sqlite

  • راه اندازی یک مخزن تست Setting up a test repository

پروژه دوم: قسمت سوم، پر کردن برگه Holdings Second Project: Part III, populating the holdings tab

  • آنچه در این بخش به آن خواهیم پرداخت What we'll cover in this section

  • شروع کار با برگه Holdings Getting started with the holdings tab

  • گرفتن برش از هلدینگ ها و آزمایش عملکرد جاری Holdings ما و Getting the slice of holdings and testing our currentHoldings function and

  • تست تابع getHoldingSlice ما Testing our getHoldingSlice function

  • ساخت ویجت جدول Building the table widget

  • دریافت اطلاعاتی که برای تازه کردن جدول دارایی ها نیاز داریم Getting the information we need in order to refresh the holdings table

  • ایجاد تابع refreshHoldingsTable Creating the refreshHoldingsTable function

  • نمایش جدول دارایی ها در برنامه ما (در نهایت!) Displaying the holdings table in our application (finally!)

  • وارد کردن دستی برخی از داده ها در sqlite Manually entering some data into sqlite

  • تغییر نوع ظرف برای جدول دارایی ما Changing the container type for our holdings table

  • رفع مشکل دکمه حذف Fixing a problem with the delete button

  • فعال کردن دکمه افزودن نگه داشتن در نوار ابزار Enabling the add holdings button in the toolbar

  • در حال افزودن اعتبار به گفتگوی افزودن منابع ما Adding validation to our add holdings dialog

  • رفع مشکل در نحوه نمایش قیمت ها و نوشتن یک تست ساده Fixing a problem with the way prices display, and writing a simple test

  • نصب Makefile Installing a Makefile

  • اضافه کردن یک آیکون، و ساخت یک فایل اجرایی Adding an icon, and building an executable

  • تنظیم تنظیمات برگزیده برای برنامه ما Setting up preferences for our application

  • فعال کردن نماد تنظیمات در نوار ابزار Enabling the preferences icon in the toolbar

برای کاربران مک: امضای برنامه ما از طریق اپل For Mac users: Signing our Application through Apple

  • آنچه در این بخش به آن خواهیم پرداخت What we'll cover in this section

  • نصب Xcode و گرفتن حساب توسعه دهنده Installing Xcode, and getting a developer account

  • امضای درخواست ما Signing our application

نمایش نظرات

Udemy (یودمی)

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

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

آموزش ساخت برنامه های رابط کاربری گرافیکی با Fyne and Go (Golang)
جزییات دوره
6 hours
68
Udemy (یودمی) Udemy (یودمی)
(آخرین آپدیت)
1,354
4.7 از 5
دارد
دارد
دارد
Trevor Sawler
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar