你将学到什么

学习如何使用 Go 和 Fyne 构建 GUI 应用程序
学习如何让你的应用程序显示常见的小部件
学习如何使用嵌入式数据库保存应用程序状态
学习如何让你的应用程序调用 Internet 上的资源

要求

熟悉 Go 编程语言
Mac 或 Windows 计算机和 Internet 连接
说明
许多开发人员对编写桌面应用程序的想法感到害怕,这可能是因为基于 Web 的应用程序的兴起。事实上,一些大学计算机科学课程甚至没有将整个课程用于开发 GUI 应用程序,这是不幸的。

Go,有时也称为 Golang,在过去十年中迅速流行起来,并且在构建 REST API、后端应用程序和网络软件方面变得非常流行。不过,网上经常出现的一个问题是如何使用 Go 构建桌面应用程序。在相当长的一段时间里,默认的答案是使用 Qt 和 CGO 绑定,但几年前出现了一个新项目——它使得在纯 Go 中构建 GUI 应用程序变得相对容易:Fyne 项目。Fyne 是一个基于这样一个前提的项目,即开发一个可以在所有平台上运行而无需修改或改编的应用程序应该是免费且简单的。Fyne 应用程序像常规应用程序一样安装在所有平台上,并提供出色的性能和可靠的用户体验。

使用 Fyne,您可以在纯 Go 中编写一次代码,并交付在 Mac OSX、Windows、Linux、Android 设备、iOS 设备上运行的应用程序,并在浏览器中作为 WebAssembly。

本课程旨在涵盖在纯 Go 中构建 GUI 应用程序的基础知识。我们将涵盖

构建桌面应用程序:我们将构建两个:一个 MarkDown 编辑器和一个允许用户跟踪(虚构)黄金投资并获得黄金价格实时信息的应用程序。

我们将涵盖

如何使用 Fyne 画布

如何使用 Fyne Windows

如何使用(和自定义)小部件,包括对话框、文本、标签、输入字段、表单和表格

如何验证用户输入

如何从远程服务器获取外部资源并在我们的应用程序中使用它们

如何使用容器在窗口中排列东西

如何将 sqlite 数据库嵌入到桌面应用程序中

如何构建自定义菜单项并将它们链接到操作

如何从您的应用程序中读取和写入文件

如何读取和写入首选项

如何将资产(例如图像)捆绑到 Fyne 应用程序中

如何使用自定义图标构建单个二进制文件

如何签署 Mac OS X 应用程序以进行分发

本课程面向

了解 Go 并希望学习如何构建 GUI 应用程序的开发人员