关于现在的图形界面库打包exe的体积

UWP被MAUI继承了~多平台开发。Android,iOS都可
WPF被WinUI体系替代,不过只要win7和.NET 3还有那么大的平台保有量,就别指望wpf会被干掉。

java的桌面gui总有一种反应慢半拍的感觉,而jre的问题其实也不小,本身装jre设置环境变量对用户已经有难度要求了,现在开发java还需要高版本jre来运行。使用我认为不管别的平台怎么样,win gui+java先出局。

c#同样需要安装依赖环境,其实坑也不小,因为不是所有版本的Windows都有对应的dotnet包的。我自己就经历过win8用不了某软件的事情。但是dotnet的包比较,下载也满方便不像java。其他方面倒是还好,感觉到坛友讲的很离谱。

我觉得如果有能力,写静态网页用js完成需求是最好的选择,整个静态空间一挂,直接覆盖全平台。其次是动态网页。不过前端适配不同尺寸窗口也很麻烦(这就又绕回了之前我吹过的Python的gradio)。

1 个赞

如果C#的圖形界面庫能用AOT就好了。

.net7有.net native了

但是還不支持WPF這些,差些基礎設施。

跨平台tauri,也挺不错的,前端的方式写页面,打包出来的体积很小

tauri 兼容性不行啊,特别是一些老平台,Linux 下甚至用的是 webkitgtk 引擎。
而且一些底层方法只有 tauri rust API 有,维护起来的工作量是个问题。
跨平台解决方案的话还是得等等 flutter,只要谷歌能别做到一半砍掉

1 个赞

C# 是系统一般都会有环境,不然下环境也会比较大。
现在比较流行用 electron ,跨平台,界面也好做。
微软的 webview2 其实不错,就是只有 window 。

electron就是个浏览器啊

看到talk如此火,我也想插一句:why nobody say 用AHK做GUI?我之前就是用AHK。

但是我也知道cpp+qt或electron才是gui的王者。

因为教程相对太少……并且AHK这玩意本身就是小众的……我初中就接触了cmd,python和c,但是我一直到几天前试图修改键盘映射的时候才接触到AHK,可见AHK一般人确实用不到,搜索编程或者GUI时,搜索引擎的推荐也不会时AHK所以用的人少啊

爬完楼了,忍不住吐槽那位金鱼大佬,这应该是我在网上见过对C#最离谱的评论了。这都已经不是“有失偏颇”的范畴了,咋一看头头是道,查实完全是生安白造罔顾事实,不知道他是有多恨微软。

1 个赞

以前用的pyQt,现在在用flet
pyinstaller 打包近 50MB,用 nuitka 能缩小近 2/3

附 Github 链接,让各位大佬见笑了 :smiling_face_with_tear:

1 个赞

好良言难劝该死鬼 ,大慈悲不渡自绝人。你非要去学习微软的技术栈我也没办法。

自己去接触一些老的 c# 程序员就知道他们现在有多后悔上了微软的贼船。国内招聘 c# 的岗位特别少,他们学习的技术不断地被微软放弃掉,非常绝望。什么 ASP.NET, UWP,Xamarin 已经基本上没人提了。VB.NET 前段时间官方博客发文说没有后续计划。做 PC 端的,很多人也从 WPF 重回了 WinForm,简直是时代的倒退。

最近微软一直在推的 dotnot core 和 TypeScript,等过一段时间还会再推一些 AI 相关的技术,你们再看看。又是逃不开火两年就被微软放弃的下场。

项目级别的没问题,三五年微软还是可以撑下来的,只要上船早。但作为个人的技术发展规划来说,依托这些浅层技术栈显然禁不起时间的考验,要抽象到上一层才行,停留在这个层次,必然会被企业刷掉啊。

我建議你發表言論不要帶太多個人感情色彩,你跟微軟有仇不代表別人也有,你看看你樓裡都歪到哪裡去了,這裡討論的界面庫都是面向個人愛好者的,C#在GUI開發不算冷,但你連根本就沒有崗位Java GUI都推上了,離譜。

2 个赞

把省了几百M说成省了几K。。。。。
这样还有什么好说的

1 个赞

還有你要講現在有招聘的話,我上面就講了有三種,C++(Qt、MFC或者其他小眾界面庫),C#(WinForm或者WPF系),Electron。這樓裡推薦C#的理由也是比Electron小,比C++簡單,算有理有據,而你現在單純是因為不看好微軟而推薦Electron嗎?

那个啥,我最近用 .net/c# 写了一个带UI的软件,可以跨平台mac/linux/win,然后原生编译,也就是不需要安装.net就可以运行,启动快,win下体积在20m左右。欢迎各位体验,开源,有源代码

Windows上的话,用ahk+webview的方案写的GUI软件,二进制大概不到500kb吧。如下面这个。

如果需要跨平台的话,推荐一个 GitHub - wailsapp/wails: Create beautiful applications using Go
Golang的后端配合系统原生的Webview渲染,包体积也不大了(相对electron),看了下几个示例项目,空包应该在10Mb左右。