用于跨平台应用程序开发的 Qt 与 HTML5(2022 年更新)

VisionMobile 是编程相关研究和调查的领先公司之一,刚刚发布了一篇有趣的文章: 跨平台应用程序 - Qt 与 HTML5。我们想补充一下我们对本文的看法,以帮助您为您的项目选择正确的框架。

Qt 和 Felgo

我们最初构建 Felgo 是为了利用 Qt Quick 的强大功能开发游戏。Qt 的这种声明性脚本语言非常强大,与其他编程语言相比,它可以节省高达60%的代码行。此外,自 Qt 5 发布以来,您还可以使用 Qt 构建出色的跨平台应用程序,包括移动桌面应用程序。

随着 Felgo 的下一个版本,我们将使用 Qt 进一步简化应用程序开发,就像我们使编程游戏更容易一样。所以请继续关注更新并享受这篇关于 Qt 与 HTML 5 的博文。

Qt 优于 HTML5

除了 VisionMobile 提到的那些之外,让我们快速介绍 Qt 相对于 HTML5 的主要优点:

易于学习

学习 HTML5 变得更加棘手,因为您对框架感到不知所措。框架实际上是一件好事,但要知道哪个框架最适合您的项目可能需要数周时间。

学习 Qt Quick(QML 和 JavaScript)则完全相反——它不言自明,易于理解,是您唯一的选择。

research2Guidance 对 2,188 名开发人员进行的最新开发人员调查也证明,学习Qt 和 Felgo比例如 PhoneGap 更容易。此图显示了比较学习跨平台工具的复杂性的结果:

学习工具的 10 大复杂性跨平台工具(低复杂性意味着易于学习):

用于跨平台应用程序开发的 Qt 与 HTML5(2022 年更新)_第1张图片

表现

这是一个很大的。Qt 基于 C++ 并具有硬件加速场景图,这使得它的速度甚至足以为高性能游戏提供动力,因此您也可以为应用程序获得出色的性能。在过去的几年里,为了充分利用渲染性能,我们在移动应用用例的进一步优化方面做了很多工作。例如 ListView 优化或纹理的自动批处理以最小化绘制调用(有关一些基准,请参见此处)。您甚至可以简单地从 QML进行疯狂的着色器修改,并在运行时应用视频过滤器。

动画 UI

最初创建 Qt Quick 和 QML 是为了使动画用户界面更容易,而不是后来添加的东西!

声明式方法一开始理解起来有点奇怪,但是一旦你掌握了它,你就永远不想让诸如 属性绑定之类的东西消失 。状态机和动画组件之类的东西使视图之间的转换和动画 UI 只需 1 或 2 行代码。

工具

Qt Creator是 Qt 的 IDE,因此也是 Felgo 的 IDE,是目前最好的 IDE 之一。它具有为您需要的 Qt 框架量身定制的一切:调试器、集成帮助、UI 设计器和一流的分析器,您可以在其中测量绘图调用、JavaScript 计时、QML 绑定等等。

原生集成

Qt 起源于 C++ 框架,后来添加了 Qt Quick 和 QML 作为声明层,以简化 UI 开发和原型设计。因此,您将获得一个可靠且经过验证的 C++ 框架,它使脚本世界和 C++ 之间的集成变得容易,并允许在应用程序逻辑和 UI 之间定义良好的分离。因此,如果您想在移动应用程序中重用现有的 C++ 逻辑,Qt 就是您的最佳选择。

同样,为 Android 调用 Objective-C 或 Java 代码也很简单(例如 Qt 5.2 引入了一些帮助类来简化 Android 的 JNI 通信)。这意味着您可以集成核心框架不支持的任何本机功能,并使其可以从脚本环境中访问。

带有 Qt 的原生 SDK

在过去几年中,我们开发了 30 多个 Qt 应用程序和游戏,并且经常处于需要Qt 框架中不存在的本机功能或 3 rd 方服务的情况。

为了使这些原生 SDK 可以从 QML 跨项目使用,我们启动了 Felgo 插件。它们的存在是为了将多个平台的本机服务与单个 API 调用集成。例如,您可以使用它们在您的 Qt 5 应用程序中集成应用内购买等货币化服务或AdMob和Chartboost等移动广告框架。或者从 Qt访问本机Facebook SDK或推送通知。

你可以在这里找到 Qt 5 插件:http: //plugins.felgo.com/

如果您需要帮助,请使用Qt 咨询和培训服务或将您的 Qt 应用程序开发外包给Felgo 的团队。

结论

公平地说,HTML5 也有它的优势,比如不是由一个主要贡献者开发的。但这样做也有好处,因为您无需依赖不同的浏览器供应商来满足标准或就新的必需功能达成一致,因此您可以更快地修复错误。

正如 VisionMobile 的 Mark Wilcox 所说:

“Qt 比 HTML5 稍有优势。但是,您可以使用其他指标来产生相反的结果。在实践中,需要选择适合项目的技术。”

由于上面给出的其他原因,我们确实看到 Qt 比 HTML5 走得更好。很棒的还有每次 Qt 更新发布的快速改进,我们很高兴加入 Qt 社区并作为Qt 技术合作伙伴简化 Qt 开发!

如果您也想与 Qt 分享您的应用程序或游戏开发故事,请点击下面的评论部分。

Ref: https://blog.felgo.com/cross-platform-app-development/qt-vs-html5-cross-platform-apps

你可能感兴趣的:(Qt,qt,html5,开发语言)