全球主机交流论坛

标题: 麻烦问下go语言 [打印本页]

作者: 斌斌    时间: 2021-5-11 13:50
标题: 麻烦问下go语言
这个是开发桌面程序的话,更跨平台么?能编译出其他平台直接打开的原生软件么?比如编译windows的软件,是exe的还是类似python需要人家装环境后,后缀是py的。另外问下,开发跨平台的电脑软件,什么语言好点。 还有那个麒麟系统,兼容linux软件么?
作者: 暗夜精灵    时间: 2021-5-11 13:57
我见过不少PYTHON桌面小工具 没见过GO的 GO理论也是可以写桌面软件

跨平台桌面C# net5
作者: cloudcone202144    时间: 2021-5-11 13:57
能编exe  
作者: 小旋风    时间: 2021-5-11 13:58
你可能需要electron
作者: r1172464137    时间: 2021-5-11 13:59
你需要fyne这个东东
作者: old    时间: 2021-5-11 13:59
直接用python就可以,有工具可以把py打包成exe
作者: zjxubinbin    时间: 2021-5-11 14:01
受限于目前生态里没有比较好的GUI框架出现, 所以Go语言在桌面程序开发方向并不是最合适的选择, 如果是要跨平台, 那么NodeJS生态里边的Electron框架倒是比较合适的选择, VSCode和Motrix也是用这个框架写的. 主要使用语言是JavaScript和CSS/HTML, 编译出来的程序自带运行环境. 麒麟系统本来就是Debian系的Linux分发版,当然支持Linux软件, 但也要注意libc的二进制兼容性.
作者: 斌斌    时间: 2021-5-11 14:02
old 发表于 2021-5-11 13:59
直接用python就可以,有工具可以把py打包成exe

这么高级的么?python的话,是用qt么。
作者: 很单纯的小伙子    时间: 2021-5-11 14:02
你要想好了,go虽然跨平台,可是没有gui框架,只能写黑框框。
凑合用gui写的也很丑,功能也不知道能不能满足你。
一堆人还自我安慰说go是个后端语言不需要gui。

会java的话可以考虑java,貌似生成的软件可以不用依赖,见过好几个java写的软件了。
py写的也比go强点。
作者: cnly1987    时间: 2021-5-11 14:10

react全家桶。
桌面electron,APP 用 react-native,  web用react~  小程序用 taro

作者: 芭啦啦能量    时间: 2021-5-11 14:13
go的话写小工具还是非常不错的,简单
作者: yuvr    时间: 2021-5-11 14:24
斌斌 发表于 2021-5-11 14:02
这么高级的么?python的话,是用qt么。


PyQt:Qt的Python binding,这是GUI库
打包EXE: PyInstaller ,建议3.3.1 版本,其他版本感觉不好用,另外这个PyInstaller 也可以打包为Mac下的App,我司的直播产品就是用这个
作者: 344085057    时间: 2021-5-11 14:29
好了好了   我来告诉你  Go开发桌面程序   目前有这样一条奇yin技巧

直接做成本地的http服务 打开软件后调用用浏览器访问
例子:github搜索"brook"的win客户端
作者: ApkB    时间: 2021-5-11 15:46
go做服务端开始很爽,没有GUI,没有GUI,没有GUI。
用户交互总不可能靠命令行吧,那怎么办呢?
开发成web程序,界面部分就是网页打开就好,这样要封装成GUI程序也方便不少
作者: 破论坛吃枣药丸    时间: 2021-5-11 16:04
为啥非要用Go

生态不是很好
作者: dunce    时间: 2021-5-11 16:22
理论上可以,我寒假用termui写了个terminal程序,win上也能正常渲染。  跨平台建议Qt
作者: yanzhiling2001    时间: 2021-5-11 16:28
先确认一下需求,cs架构?bs架构?

go没有好用的gui库,web库到是一堆,可以很快成型。而且我也觉得,现在的业务普遍都是堆表单堆数据堆增删改查,从这方面来说,cs能做到的,bs也能做到。

作者: wangjianjilei    时间: 2021-5-11 16:36
electron虽然好,但是体积臃肿(毕竟是整个浏览器),又因为是html体系的,所以很多人不喜欢(认可),事实上现在跨平台还是qt多(特别是德国佬,特别喜欢qt或者pyqt方案),不过我个人还是青睐于electron方案。

其他跨平台方案还有javafx,mono winform,larazus还有最新的flutter

javafx挺不错的,喜欢的java可以玩玩。

mono不是微软搞的,谨慎上车

flutter我看了下语法实在不喜欢,而且这是个新方案,可能会有很多坑,谨慎上车

还有个经典方案,是larazus,其实就是delphi,也挺不错的有兴趣可以玩

go语言虽然有gui包,但是我记得没错的话,几个gui库的作者基本上都弃坑了,不玩了,go的桌面程序好处也是有的,打包后体积小,特别小。比其他几个框架都要小几十倍吗,毕竟java要打包jre,electron要打包浏览器,没办法的事,跟go不是一个原理


作者: yousihai    时间: 2021-5-11 17:00
go可以直接生成各平台的原生代码,不需要依赖库(开cgo就需要)。但上面大佬们已经说过了,go的gui库非常差,可用的基本可以说没有,只能弹个框什么的。。。。只适合做cui或者web服务。
生态不能和py java比,不过也算不上差,常用的也都有。当然gui生态除外
作者: h20    时间: 2021-5-11 17:01
提示: 作者被禁止或删除 内容自动屏蔽
作者: d5d    时间: 2021-5-11 17:24
py代码的奇巧**技
用PY写代码,用aardio写界面。
作者: orz2    时间: 2021-5-11 17:27
目前只适合写命令行程序,GUI接口还没有好的方案。通用方案就是 用浏览器当控制台
作者: 走好,再见    时间: 2021-5-11 17:29
Go语言不适合桌面开发,他没有成熟框架,不建议用
作者: shuni9    时间: 2021-5-11 17:45
go语言写windows的桌面程序,普遍采用 walk库,https://github.com/lxn/walk

见过几个用walk 库写的桌面软件,直接就是exe不需要安装任何其他的环境




欢迎光临 全球主机交流论坛 (https://lilynana.eu.org/) Powered by Discuz! X3.4