使用GO来开发桌面GUI程序,个人感觉有几个好处:
- 静态编译后只生成单个文件。实现小型和工具型程序不需依赖,易于分享。
- 直接编译为exe等可执行文件,不用像PyQt、Electron那样再打包。
- 跨平台编译能力,同时支持多个跨平台库。
- 并发优化,协程支持,开发多线程GUI程序,比Python效率更优。
- 语言简单,开发难度较C++小。
常用的GO-GUI库
- github.com/andlabs/ui
跨平台ui库,API简单,充分体现了GO语言特性。 - github.com/salviati/go-qt5
QT的GO绑定。API接近于其他语言绑定。 - github.com/conformal/gotk3/gtk
GTK的GO绑定。 - github.com/lxn/walk
window平台GUI库。使用类似将数据按结构映射为GUI。
关于gcc编译
GO的很多库安装时自动调用gcc编译。
windows平台下,想要支持gcc,可以安装MinGW-w64。下载地址https://sourceforge.net/projects/mingw-w64/。
在线安装在境内比较缓慢,耐心等待。