如果目标只是做win上运行的小程序,写写GUI套壳,AI时代学什么编程语言比较好?

LinkChou 2026-09-03 21:50 1

如题,求助各位佬友,现在都2026年了,AI编程大量普及,那如果只是想完成以下几个小目标,学习什么编程语言比较好呢?


目标



  1. 做在且仅在Win上运行的程序

  2. 不要Electron技术栈的,WebView2也不要

  3. 尽量轻量,以hello world为例,release版本的大小>10M,内存>50M的统统拒绝

  4. 支持高dpi

  5. 原生支持CJK输入

  6. 界面原不原生随意

  7. 运行效率尽量高,至少要比python高

  8. 向他人分发时,尽量避免让他人安装依赖

  9. 尽量支持win7


以上1-5点为必选项,其余可选


背景(编程经验?)


小学:从cmd和bat的脚本小子一路走过来的,然后理所当然的转易语言


初中:继续用易语言,接触了精易模块,但因为造出来的东西分发困难,会被当时几乎所有主流杀软报毒而被迫另寻他路


高中



  • 以Python+Tkinter/wxPython为主,基本上把python的官方教程( Python 教程 — Python 3.14.7 文档 )学完了(当然那时候才3.8吧)。

    • 跳过了爬虫与网络,只看本地相关的



  • 然后自学了点C和Cpp(但是十分不精通,仅限写简单的cpp项目,能看懂简单项目的代码,C++PrimerPlus看到类就没继续,CPrimer也是到类)


大学



  • 没啥时间研究编程(非科班,医学生……),只是换了开发起来更简单的aardio,但是近期越来越发现aardio的文档组织极差,网络上的参考资料极少,各种少用的功能还得手动调winapi,基本上所有的轮子都得自己手动造。

  • 学了rust,入了好几次门终于入进去了,能写、看懂简单的程序,但是发现纯rust难以开发GUI,要么不满足上面的要求,要么能满足但是难度极高(例如rust调winapi/winsafe库等)


当前

以rust写后台,前台调其他语言的GUI为主,当前用过cpp的imgui,rust的很多库(egui,tauri,slint(这个没学明白),freya,Iced等),但是复杂度和程序体积都没达到我的预期


附个我做的GUI页面,我的程序复杂度大概就这么高(这是用aardio写的)


AI方面


在给不少程序当义务QA的时候积累了不少复现bug的经验,所以当前我都是用超长的prompt加上各种各样的edge case让ai干活,从结果来看效果还是不错的:


指,我完全了解自己构建的AI项目的架构和各模块及模块中方法的作用,正式发版无任何恶性bug、测试阶段能自己构造成功的测试用例(完善不敢说)、用户提出的问题能自己找到出错点并要求AI解决(没钱的时候就是自己上了,但仅限rust和cpp的逻辑部分,纯正winapi回调做的UI写不明白一点)。


其他


我已浏览一下帖子,但是其中没有特别符合我的要求的。我也阅读了社区准则,但是不确定这个帖子发在灌水区好还是这里好……



如题,本人自己会 java 和 前端,没有开发过桌面应用,看大佬们几天就能搞出一个小软件,心里痒痒的,换语言的话,哪种方式上手快,兼容性比较好(win、mac、linux),求推荐
投你喜欢的技术吧
投票


准备在win上面做个小工具,不考虑跨平台问题,之前一直是用PySide6+Nuitka,但是打出来的包体积比较大,编程语言方面自己也不熟悉C/C++,只会Go和Python,所以技术选型上面现在有点犯难 ^-^
问问佬友们有没有推荐的gui框架,不依赖webview或chromium内核就好


我的GitHub主页见下,如果各位佬友想通过我的过往项目确认编程水平可以参考:




总结


以我目前的编程知识水平,学什么编程语言能较好的完成以上的目标?

最新回复 (14)
  • xyTuoren 09-03 21:53
    1

    可以看看WinUI

  • ppgamess 09-03 21:56
    2

    感觉C#适合你

  • GreatZaochen 09-03 22:00
    3

    感觉qt在win的体验也还可以,也比较成熟

  • 南箕子 09-03 22:03
    4

    做点小程序 egui 不是最合适吗,这个都不满意那就用 windows 自己的原生方案吧,winUI 是吧

  • 牛马 09-03 22:03
    5

    看你说的要求,可以试试C#

  • apparition 09-03 22:04
    6

    看起来不像是什么小目标

    已经算是需要克服的困难点了

    综合来说,Rust 吧


    win7 刚需的话,C++ 吧

    但 AI 写的效果偏差

    得自己和 AI 慢慢搓

  • Jim Green 09-03 22:05
    7

    jimmgreen/LUMENUI: High-performance Windows native monochrome luminescent UI library 看看我这个,基本满足你的要求。

  • chapiom 09-03 22:07
    8

    这么多要求也只有c++适合了吧,放弃兼容性最求极致性能。c#还是要依赖formwork的,新版也不支持win7了。

  • hzqst 09-03 22:10
    9


    1. 做在且仅在Win上运行的程序

    2. 不要Electron技术栈的,WebView2也不要

    3. 尽量轻量,以hello world为例,release版本的大小>10M,内存>50M的统统拒绝

    4. 支持高dpi

    5. 原生支持CJK输入

    6. 界面原不原生随意

    7. 运行效率尽量高,至少要比python高

    8. 向他人分发时,尽量避免让他人安装依赖

    9. 尽量支持win7



    chromium系的死于第二条

    原版qt死于第三条(不考虑自己阉割的话)

    native win32系(比如MFC)死于第4条(不要跟我抬杠说MFC支持hdpi)

    .net系(比如Avalonia)死于第3条+第8条(要么打包得时候附带.net runtime要么强制用户安装.net)

    winui3死于第九条


    算下来你好像只能选择imgui这种立即模式的了。

    你别管一个GUI吃50%GPU和10%的CPU性能开销大不大,你就说右上角的2000fps看得爽不爽吧

  • LinkChou 楼主 09-03 22:14
    10

    WinUI3


    暂不考虑,或者如果现状可以的话可以再看?


    @xyTuoren 去年被WinUI的超绝helloworld编译过程文件体积吓晕了,故放弃,此外对WinUI3的印象极差,store里面的WinUI3 Gallery示例程序都崩溃




    WinUI3


    有兴趣


    @ppgamess @frank8 了解过,不过要是C#的话,是不是只能用到 4.8 ?高版本就得用户自己装依赖了吧,不过仍是目前第一有兴趣的




    Qt


    体积顾虑


    @GreatZaochen 写python的时候写过Python-Qt,但是发现体积压不下去,请问有什么压体积的好办法吗




    egui


    @paring 在布局稍微复杂一点的时候egui就不大好写了,UI细节调起来也很费事……




    rust/cpp


    @apparition rust一个是win7兼容差,再一个是rust本身手搓winapi那我真不如直接上cpp了啊……看着一堆unsafe头疼


    @chapiom 确实,当前我写各种小项目的时候还是会优先考虑cpp写GUI




    LUMENUI


    @Jim_Green 刚开始看readme,稍等




    不便分类


    @hzqst 感谢回复,综上来看,如果C#4.8能满足的话还是可以的,毕竟第5条以后都是可选。此外,如果各位佬友说的编程语言在前几个方面表现十分突出,我也是可以完全忽略后面几点的(

  • chapiom 09-03 23:03
    11

    QT体积压不下来的,捆绑了太多东西在里面。目标机器有formwork的话,c#^-^winform体积很小,c++性能极限但是确实太老了。

  • Blackwood416 09-03 23:08
    12

    .net系用AOT发布+trimming可以把体积和依赖都减少很多的,实际占用和内存消耗要看用的库

  • hzqst 09-04 21:27
    13

    试了下并不能解决体积大的问题,Avalonia AOT之后仍然保底30M+

  • LinkChou 楼主 09-04 21:29
    14

    谢谢大佬们,现在暂时选定了 C#(Net 4.8),通过放弃了win7换来了开发效率和运行效率,我再也不手搓调winapi了

* 帖子来源Linux.do
返回