لطفا جهت اطلاع از آخرین دوره ها و اخبار سایت در
کانال تلگرام
عضو شوید.
آموزش ساخت برنامه های رابط کاربری گرافیکی با 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
یودمی یکی از بزرگترین پلتفرمهای آموزشی آنلاین است که به میلیونها کاربر در سراسر جهان امکان دسترسی به دورههای متنوع و کاربردی را فراهم میکند. این پلتفرم امکان آموزش در زمینههای مختلف از فناوری اطلاعات و برنامهنویسی گرفته تا زبانهای خارجی، مدیریت، و هنر را به کاربران ارائه میدهد. با استفاده از یودمی، کاربران میتوانند به صورت انعطافپذیر و بهینه، مهارتهای جدیدی را یاد بگیرند و خود را برای بازار کار آماده کنند.
یکی از ویژگیهای برجسته یودمی، کیفیت بالای دورهها و حضور استادان مجرب و با تجربه در هر حوزه است. این امر به کاربران اعتماد میدهد که در حال دریافت آموزش از منابع قابل اعتماد و معتبر هستند و میتوانند به بهترین شکل ممکن از آموزشها بهره ببرند. به طور خلاصه، یودمی به عنوان یکی از معتبرترین و موثرترین پلتفرمهای آموزشی آنلاین، به افراد امکان میدهد تا به راحتی و با کیفیت، مهارتهای مورد نیاز خود را ارتقا دهند و به دنبال رشد و پیشرفت شغلی خود باشند.
نمایش نظرات