桌面GUI框架——持续更新

之前也汇总过一些关于gui框架的信息,但有些分散,不完整,也不系统。今天开始写一篇从编程语言、跨平台的角度汇总一下主流的框架,后续会持续更新。

任何GUI应用的开发使用一门或多门语言实现,从语言、跨平台等角度进行汇总,会更加实用。希望对大家有所协助。

序号

语言

框架

是否跨平台

协议

支持语言

描述

1

C

GTK

LGPL

C、C++,Python, Rust, JavaScript 等

从GIMP项目里独立出来的UI库

2

C++

QT

LGPL或GPL或商业协议

C++、Python、Go、JavaScript、R等

老牌的跨平台GUI框架

3

C++

duilib

MIT

C++

Duilib是一个Windows下免费开源的DirectUI界面库。

4

C++

wxWidgets

LGPL 的修改版本

C++, python,Ruby, Lua, Perl

wxWidgets 是一个 C++ 库,它使开发者能够使用单一代码库为 Windows、macOS、Linux 及其他平台创建应用程序。

5

C++

FLTK

LGPL

C++

轻量级的GUI库

6

java

swing

java

7

java

awt

java

8

java

javafx

GPL with the class path exception

java

9

Kotlin

KMP

Apache License 2.0

Kotlin

jetbrains 和google合作开发的跨平台框架

10

C#

maui

C#

不支持linux

11

C#

avalonia

C#

由社区维护,支持平台多,但bug也多

12

C#

winforms

C#

13

javascript

electron

MIT

javascript, C++

由nodejs和V8 运行时组成

14

JavaScript

nodegui

MIT

JavaScript

由nodejs和qt组成,去掉了浏览器运行时,减少了打包体积和运行内存。支持react、vue.

15

Python

Tkinter

Python

标准库自带

16

Python

PyQt

GPL、商业许可

Python

Qt的Python封装

17

Python

Pyside

LGPL或GPL或商业协议

Python

Qt的Python封装

18

Python

wxPython

LGPL

Python

wxWidgets

的Python封装

19

Pascal

Delphi

商业

Pascal

20

Pascal

lazarus

GPL, LGPL

Pascal

本人在闲暇时尝试过其中一些框架,其中大多数没有达到预期。世界上没有完美语言,在其基础上开发的各种框架自然不也完美。根据实际业务选择即可。

其中有些框架已经不更新了,虽然还不影响使用,但随着时间增长后,可能会出现一些意想不到的问题,列如不支持新版本的系统等。

提议有实力的公司或个人选择商业支持的框架,能节省不少心力;不想花钱的个人或公司,选择宽松协议的框架,并强烈提议避开QT、Delphi等律师函满天飞的框架,有可能还没等到赚钱,就先花出去一笔钱,你说不舒服不不舒服。

整理不易,如果对您有用,麻烦点个赞或收藏~

© 版权声明
THE END
如果内容对您有所帮助,就支持一下吧!
点赞0 分享
默莲的头像 - 鹿快
评论 共2条

请登录后发表评论