V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
fox0001
V2EX  ›  程序员

现在都用什么开发 Windows GUI 客户端?

  •  6
     
  •   fox0001 · 2018-12-27 12:19:52 +08:00 via Android · 38916 次点击
    这是一个创建于 2162 天前的主题,其中的信息可能已经有所发展或是发生改变。
    除了 C#和 Web,有没有推荐?开发快,兼容好,最好可以跨平台
    144 条回复    2018-12-29 19:41:57 +08:00
    1  2  
    Mac
        101
    Mac  
       2018-12-28 10:19:58 +08:00 via Android
    易语言,这些库基本够一个常规 gui 了,有些还真的挺好用。
    leefsfd
        102
    leefsfd  
       2018-12-28 10:20:44 +08:00
    c#呗,别折腾 windows 最佳的.
    kwanzaa
        103
    kwanzaa  
       2018-12-28 11:02:14 +08:00   ❤️ 1
    推荐给喜欢折腾的🐁:flutter-desktop
    跨平台是吧?配合 Golang 一次跨个爽。
    wobuhuicode
        104
    wobuhuicode  
       2018-12-28 11:09:24 +08:00
    跨平台 肯定是 web 最好。JS 统一全平台。不过问题就是你要跨多少个平台,主要功能放在 web 是否合理等等。
    按照你的标题的话,开发 Windows 肯定就是 c#了
    karllynn
        105
    karllynn  
       2018-12-28 11:14:49 +08:00
    golang 不适合写 GUI,flutter 可以考虑
    luyluy
        106
    luyluy  
       2018-12-28 13:56:20 +08:00
    刚入坑 WPF,相当强大,期待早日跨平台
    publicvoid
        107
    publicvoid  
       2018-12-28 14:12:33 +08:00
    pyqt pyqt pyqt 不再重复
    Neojoke
        108
    Neojoke  
       2018-12-28 14:39:29 +08:00
    微软自家的 visual studio code 使用 electronjs 开发的,visual studio code 是一款代码编辑器,包括了 macos windows linux 平台,框架是能满足大部分需求的。
    hv3s1
        109
    hv3s1  
       2018-12-28 14:54:17 +08:00
    pyqt
    1. 跨平台
    2. pyinstaller 可以打包成可执行文件,包括库。
    3. qt designer 拖框框,快速开发。
    4. 业务逻辑 python 库很多,不满住 C 扩展。
    5. API 和 C++的 QT 差不多。找不到资料直接看 C++的实现。
    yanzidao
        110
    yanzidao  
       2018-12-28 16:47:57 +08:00
    Qt 收费挺贵的,东西感觉挺好的。不仅桌面端开发,嵌入式也可以用。
    mmdsun
        111
    mmdsun  
       2018-12-28 16:48:51 +08:00 via Android
    果断 c#。桌面组件都已经开源了
    chenqh
        112
    chenqh  
       2018-12-28 16:54:35 +08:00
    @hv3s1 不会 C++怎么办
    hv3s1
        113
    hv3s1  
       2018-12-28 17:10:30 +08:00
    @chenqh 现在网上的 PYQT 的中文信息不多,但英文的已经很多了。baidu 不行还有 google 嘛
    demonzoo
        114
    demonzoo  
       2018-12-28 17:52:43 +08:00
    @xupefei 同意,再或者就会像 electron 那样无限吃内存。关键看楼主的需求了
    darknoll
        115
    darknoll  
       2018-12-28 20:02:08 +08:00
    @hv3s1 为什么不直接用 Qt ?
    gowk
        116
    gowk  
       2018-12-28 20:53:28 +08:00
    Intellij IDEA 的界面是用什么做的?感觉各种操作非常爽,页面也不丑
    hv3s1
        117
    hv3s1  
       2018-12-28 21:34:28 +08:00
    @darknoll python 逻辑部分很好写。
    xupefei
        118
    xupefei  
       2018-12-28 21:34:58 +08:00
    @gowk #116 Java+自己开发的 UI 库。虽然不丑,但性能低。
    另外由于 IDE 是自给自足的环境,并不依赖系统本身的 GUI 相关 API,所以操作系统集成度不需要很高。但你说要让 IntelliJ 在 Mac 上用 mac 的 UI 样式,他就搞不定了。
    1747479654
        119
    1747479654  
       2018-12-28 21:42:56 +08:00
    ###############################

    https://www.v2ex.com/t/522057 哪位有兴趣有能力请联系我.
    sfqtsh
        120
    sfqtsh  
       2018-12-28 21:49:58 +08:00 via Android
    没看到推 MFC/Win32 的🙂
    dachuige
        121
    dachuige  
       2018-12-28 21:49:59 +08:00
    y 易语言+1
    szzhiyang
        122
    szzhiyang  
       2018-12-28 22:00:23 +08:00
    @sfqtsh

    我之前在 https://www.v2ex.com/t/515887 中问大家是怎么系统学习 Win32 开发的,并没有得到什么靠谱的回答,看来并没有多少人会 Win32 开发。
    Asimov01
        123
    Asimov01  
       2018-12-28 22:49:11 +08:00
    @xupefei 性能低吗?但是体验起来还不错欸,起码不卡,感觉和以前那些 Java UI 开发出来的东西完全不一样
    secondwtq
        124
    secondwtq  
       2018-12-28 23:45:21 +08:00
    @Neojoke 我觉得 VSCode 是 Electron 少数能看的产品之一,这个应该和 MSFT 自身扎实的工程能力是分不开的,我个人觉得 VSCode 是一个例外,换其他人做相同的东西,可能效果会差很多
    littlewing
        125
    littlewing  
       2018-12-28 23:56:57 +08:00
    要啥 GUI
    jedihy
        126
    jedihy  
       2018-12-29 01:44:11 +08:00 via iPhone
    除了 electron,请问哪些对 hidpi 友好?
    hakono
        127
    hakono  
       2018-12-29 02:03:08 +08:00 via Android
    @szzhiyang 主要是 win32 开发真的没什么好推荐的啊。 三楼那个 indows 程序设计,windows 核心编程就够了。
    如果要开发界面的话,又没人高兴用 win32 开发。
    darknoll
        128
    darknoll  
       2018-12-29 09:01:24 +08:00
    @secondwtq 所以那些喷 electron 的,还是自身能力不行吧
    zjyl1994
        129
    zjyl1994  
       2018-12-29 09:50:56 +08:00
    C#还是很好的,别的就别想了,windows 平台就 C#+VS 是最佳选择
    lilililili1010
        130
    lilililili1010  
       2018-12-29 10:02:05 +08:00
    @ToHaveLight 最近也在看 qt 套 cef,想找一个 qt 与 cef 交互的例子,但是没找到😭
    kylix
        131
    kylix  
       2018-12-29 10:25:41 +08:00
    头一次听说 Delphi 小众
    damngood
        132
    damngood  
       2018-12-29 11:12:06 +08:00 via iPhone
    为什么就没人考虑用平台自带的 webview 呢? 比 electron 方案要轻量不少吧
    sryanyuan
        133
    sryanyuan  
       2018-12-29 11:24:01 +08:00
    mfc/qt/duilib
    newmlp
        134
    newmlp  
       2018-12-29 11:55:30 +08:00
    我司是 qt 里面套 cef,前端做界面,c++提供底层支持
    blueskea
        135
    blueskea  
       2018-12-29 12:03:29 +08:00 via Android
    pyqt 打运行包真心好累
    4KMOMhIkocgLELMt
        136
    4KMOMhIkocgLELMt  
       2018-12-29 12:06:55 +08:00 via iPhone
    @damngood mac 可以,Windows 没人支持 edge,都是打包个 webview 浏览器
    k2wdev
        137
    k2wdev  
       2018-12-29 12:14:15 +08:00
    Electron
    liuxey
        138
    liuxey  
       2018-12-29 12:14:53 +08:00
    @damngood #132 electron 首先是 native 其次才是 web。不然干脆做 web 版,做什么客户端。
    damngood
        139
    damngood  
       2018-12-29 14:39:15 +08:00
    @taianrc edge 支持那么差的呀. 不过如果只打包进去一个 webview, 应该还是比 electron 好一些
    damngood
        140
    damngood  
       2018-12-29 14:48:42 +08:00
    @liuxey 我的意思是替换技术方案来达到 electron 的效果.

    electron 的效果无非是一套代码多平台复用.

    如果换我刚说的方案,

    UI 使用系统内置 webview
    业务逻辑使用一套代码来实现跨平台, 候选: c/c++/golang/rust
    然后少量的 native 代码来处理系统特有的特性

    我个人是觉得这种方案要比 electron 的方案要轻量级一些, 对终端用户友好一些.

    想象一下如果真的 electron 大行其道, 终端用户同时打开的应用有 5-10 个 app 是基于 electron 的, 那真是太消耗资源了

    有机会我还真想自己撸一个类似架构的桌面 app 试一下
    JASONWOOD
        141
    JASONWOOD  
       2018-12-29 15:18:02 +08:00
    问一下,web 应用的 js 能像 native 的客户端那样对硬件资源的充分利用吗?比如 GPU 的使用
    Jumaluata
        142
    Jumaluata  
       2018-12-29 16:53:27 +08:00
    我还是喜欢用 PyQt,要求不高的桌面 GUI 很好弄,会样式表界面也可以做的超好看,关键上手简单。
    wenzhoou
        143
    wenzhoou  
       2018-12-29 19:39:40 +08:00 via Android
    Web 框架一统江湖。后端随便挑语言。
    一是 前后端分离,扩展性好。回头你要做 bs 结构和 cs 结构都容易做。
    二是 用专业的语言做专业的事情啊。后端追求性能用 Java,golang。后端追求撸的快,用 Python。后端现有的库一堆一堆。
    第三 花样多。想怎么折腾怎么折腾。加个服务,容易。融合已有的系统,也容易。项目做大了要加几台服务器,也轻松。自己折腾也是很有乐趣。
    songsong
        144
    songsong  
       2018-12-29 19:41:57 +08:00
    DELPHI 天下无敌
    1  2  
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3396 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 30ms · UTC 11:33 · PVG 19:33 · LAX 03:33 · JFK 06:33
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.