Qt alternative?

Qt alternative?

本文关键字:alternative Qt      更新时间:2023-10-16

我最近发现Qt的未来变得不确定,因为它的现任所有者诺基亚宣布他们正式对桌面Qt不感兴趣。

我知道Qt可以在几个不同的事件中幸存下来,但我担心学习一个垂死的框架在操作系统支持方面,所以我想学习另一个跨平台的应用程序框架,就像Qt一样。

它需要是跨平台的,并包含许多类,如Qt的开发以及一个坚实的GUI库。我希望它非常稳定,并得到操作系统和ide的良好支持

WxWidgets在win32上建模太多,非常不直观,窗口布局非常不稳定

Gtkmm模型非常像一个包装器,因为它是Gtk的,并且它的文档有些不存在。它也有很少的应用程序类,所以我也必须寻找其他跨平台库。它的信号槽实现无法与Qt的易用性和简单性相比,Qt的线程支持是惊人的。

我唯一担心的是,如果没有公司或大型社区选择Qt,它将慢慢失去与windows,新Linux内核,Xorg版本,mac更新....的兼容性我不愿意看到这种情况发生,因为Qt是一个了不起的框架

Qt的未来非常不是不确定。Qt的许可证有一个条款明确规定,如果在任何时候它不再提供,那么它将成为公共领域。在这一点上,我可以想象KDE的人会接管开发(因为他们已经考虑过合并kdelib与Qt至少一点点)。

同时,有一家公司(Digia?)目前仍然提供Qt的商业许可证。

最后,诺基亚正在积极开发Qt5,我看不出它离"死亡"有多近,简单地说,你被误导了。

我不确定这是否真的是一个巨大的问题,想知道Qt是否会退出使用。它是同类中最流行的(如果不是最流行的)跨平台库之一,并且仍然有强大的支持。

无论如何,你关于其他系统的问题仍然是相关的。以下是我最喜欢的两个:
  1. 切换到具有标准支持的跨平台语言,如Java。

  2. 使用带有这些标准库的跨平台语言编写应用程序脚本,以便构建应用程序的这些部分,而您仍然使用c++代码完成其余工作。

它们是非常相似的选项,第二个选项没有那么引人注目。特别是考虑到这个问题是出于对库生存的担忧而提出的,我更愿意依靠高度流行和成熟的语言来维持支持。当然,语言可能有很多选择,但我最熟悉的是Java,这就是我前面提到它的原因。编写Java代码与c++代码互操作并不是太糟糕,而且它还提供了一个很好的例子,说明在应用程序中使用多种语言是如何有利的。

Qt的未来从不是不确定的。说"我们对桌面电脑不感兴趣"的人不是电脑的主人。Qt的未来在2月11日(WP7合作的公告)之后被提及。事实上,QML是未来ui的好方法。

为你证明,Ubuntu的新Unity界面将有一个2D QML界面,未来的版本将为一些应用程序提供QML 3D界面。新版Ubuntu与Qt高度集成。

到目前为止,Qt的发展方式太好了。作为Qt博客和实验的常客,我可以肯定地说。新的Qt 5将会有很多功能和性能上的改进。此外,他们还承诺将其开发为成功的开放治理模式。所以,每个人都可以贡献。

因为未来的开发将是针对手机和平板电脑的,你会发现大多数教程似乎创造了一个Qt不支持桌面的错觉,但事实并非如此。

下载最新的Qt SDK 1.3,您将找到用于桌面的Qt 4.7.4。

为了简化Qt的使用,用于开发移动和桌面应用程序,诺基亚已将这两个开发环境合并为一个SDK,称为Qt SDK,不像以前的诺基亚Qt SDK。

此外,我认为没有其他c++开发框架可以像Qt现在支持的那样支持广泛的平台。

我支持:—桌面操作系统:Windows、Linux、Mac OSx。-移动操作系统:Symbian, Android(社区支持),IOS(社区支持)支持),Windows CE,-嵌入式Linux设备,Meego, Maemo。平板电脑操作系统:Android、Meego、Tablet Linux端口

一个移植它的新机会是以Qt必需品的名义提供的- Qt的Android端口和IOS端口仅基于此。如果您有疑问,请查看YouTube上的视频。

关于Java,我读到它不像Qt那样跨平台。我也怀疑除了Qt之外,是否有任何IDE能给你带来交叉编译的舒适。

文档非常好,对于不支持跨平台的极少数情况(对于某些窗口函数),它明确地提到了在特定操作系统中实现它的替代方法。

QML是很棒的,因为它的后台操作是用c++执行的,给你类似的性能(比Qt c++快85%)。并且您不会有内存管理的头痛(如果您不习惯使用c++)。如果你真的想要一个漂亮的GUI和快速的性能,那就选择QML和c++吧。否则,最简单的选择就是使用QML和Javascript。

我正在为Symbian开发一个应用程序,在我的诺基亚E63中使用沉重的动画,CPU时钟速度为(386 MHz), QML性能更流畅,根本不会挂起。

你甚至可以用if else语句找到操作系统和版本,很简单。先试一试,然后通过阅读一些评论来决定。

Qt许可是不公平的。他们要求单座开发人员支付10座开发人员支付的许可费用的1/10,尽管单座开发人员的市场份额比10座开发人员小100倍,而且10座开发人员总是隐藏座位数量。

其他的"免费"许可证只是引诱你在他们的系统上投入时间。之后,当你想赚钱的时候,你必须支付他们高得离谱的授权费用,才能从你的投资中获得回报。

除了Evan Teran的帖子。

http://www.kde.org/community/whatiskde/kdefreeqtfoundation.php

这是Fox工具包,一个跨平台GUI c++工具包。我最近发现了它,并将很快为我们的软件进行评估。从文档来看,它似乎很直接,但实际上我还没有在其中开发任何东西。

来自网站:

FOX代表x的Free Objects。它是一个基于c++的类库构建图形用户界面…使用FOX的应用程序不直接依赖于X-Windows。由于FOX系统完全隐藏了所有的平台依赖关系(应用程序甚至不包括X-Windows头文件!!),这样的应用程序将很容易移植到其他平台,只需重新编译。