对Qt for Android的评价(很全面,基本已经没有问题了),可以重用QT积累20年的RTL是好事,QML效率是HTML5的5倍
可以直接去Qt官网查看他和那些厂商合作。关于和Java的比较,框架和Java进行比较似乎不且实际。
如果是C++和Java比较,网上有很多文章,可自行翻阅,不要在知乎上看C++和Java比较,黑了C++,捧了Python和PHP。Java呢?晾一边了。
在安卓上的话,现在问题可能很多,但是随着Qt的更新,大体解决得七七八八了。Qt on Android 对于原有Qt开发人员和爱好者是一个不错的选择,虽然在Qt可以完成大部分安卓的对应功能,可以做到不敲Java代码,但是Qt官方的意图是让程序猿少敲Java代码,所以提供了Android Extra模块。(对于安卓3.0以下可能不完善,但是例如各种传感器,摄像头,本地化等等支持很完善了,WebView的问题貌似在Qt5.5解决了,如果不行就Java和C++混编,混编难度大?一个人确实是难了点,但是对团队来说,这种事情很好解决的)。
然后,Qt说到底,还是跨平台的界面库,所以对于主流系统的支持会日渐完善的。
另外由于C++本身特性,适合和脚本语言结合,完成静态语言和动态语言的长短相补。所以我安利一下QML~
作者:qyvlik
链接:http://www.zhihu.com/question/32282261/answer/57381061
来源:知乎
著作权归作者所有,转载请联系作者获得授权。
没别的大缺点
网易战网客户端就是Qt quick写的
1. 跨平台只在PC上有优势,在移动设备上毫无优势。移动设备整体的应用风格需要保持一致,你外部加进来一个UI,倒是和平台保持一致了。你如何保持和原生UI的这种使用一致性。
2.在开发易用度上,Android(java) API 已经做得很好,包括事件,广播,服务等Qt里有的基本上Android API里已经做得很好,从Qt开发者转为java开发者也很容易。 而如果要写QfA应用,开发者不仅要懂Qt,同样也避免不了要写java代码。
3. 如果要写和其它app通信的时候,QfA的灾难性就来了。如果是上层的几乎等完整的搞一遍Android API吧。 另外对于和设备相关的一些调用(GPS/Telephony)等,QfA的工作量一下子就上来了,这时候你还指望QML么?
4.性能呢? QfA对于图形渲染区的请求还得在java的接口请求,是不是又要绕了个大弯。
5. 软件体积。 终端用户要用Qt app,势必要先装一个Qt lib, 或者在你的app 中一起静态发布。
在有很多优秀的QfA app出现之前,大家不带乐意只为一个好的app 去装一个大的软件,而会愿意选择一个原生软件替代。
6.官方支持。目前Qt开发团队多少人?但目前他们要支持多少平台。 Linux/Windows/Mac/Vxworks/QNX/Android。 如果没有一个比较大的商业级别软件在用QfA,官方能做的就是让这个软件在Android平台能编译,运行,解决一些明显的bug。
7. Qt做mobile最好的机会就是被大款看上。她也曾经被看上过(Nokia 和 Intel)。 但是被Elop害死了。 我恨他!!!!!!!!!!!!!!!!!!!!! !
Qt是一款优秀的开发套件,我爱她。
链接:http://www.zhihu.com/question/19689965/answer/22507712
来源:知乎
著作权归作者所有,转载请联系作者获得授权。
Qt for Android还是有他的优势:
1. Qt主打的优势是跨平台,Qt5.2已经可以较完整的支持Android和IOS,目前从跨平台这方面来讲Qt是最好的没有之一。
2. 经过近20年的锤炼,Qt已经积累丰富实用的,网络,2D图形,3D图形及UI库等,这些如果能在Android上得以重用自然是好事
3. Java在很多复杂运算上面的效率是不如C++的,虽然有NDK,但是使用起来还是略显麻烦,Qt for Android在这方面就容易的多了
4. 对于一些C++的死忠,而又需要开发Android的应用,但是又不想学习Java Android开发的人Qt提供了一个快速上手的好选择
5. QML+JS可以方便快速的开发出高端大气上档次的UI,同时效率又比HTML5高出将近5倍(网上有测评)
因此,有没有前途跟用什么技术没有太大关系,重要的是你用它来做什么应用。
作者:Leo Lei
链接:http://www.zhihu.com/question/19689965/answer/22313952
来源:知乎
著作权归作者所有,转载请联系作者获得授权。
对Qt for Android的评价(很全面,基本已经没有问题了),可以重用QT积累20年的RTL是好事,QML效率是HTML5的5倍的更多相关文章
- 对Qt for Android的评价(很全面,基本已经没有问题了,网易战网客户端就是Qt quick写的),可以重用QT积累20年的RTL是好事,QML效率是HTML5的5倍
现在Qt不要光看跨平台了,Qt也有能力和原生应用进行较量的.可以直接去Qt官网查看他和那些厂商合作.关于和Java的比较,框架和Java进行比较似乎不且实际.如果是C++和Java比较,网上有很多文章 ...
- Qt on Android 核心编程
Qt on Android 核心编程(最好看的Qt编程书!CSDN博主foruok倾力奉献!) 安晓辉 著 ISBN 978-7-121-24457-5 2015年1月出版 定价:65.00元 4 ...
- Qt for Android开发环境搭建及测试过程记录
最近学习了Qt的QML编程技术,感觉相较于以前的QtGUI来说更方便一些,使用QML可以将界面与业务逻辑解耦,便于开发. QML支持跨平台,包括支持Android平台,因此可以使用Qt的QML进行An ...
- Qt on Android:让 Qt Widgets 和 Qt Quick 应用全屏显示
Android 系统版本号非常多,较新的 4.4 ,较老的 2.3 ,都有人用. Qt on Android 开发的 Android 应用.默认在 Android 设备上是非全屏的. 而有些应用的需求 ...
- qt on android之GPS信号的获取
0. 写在最前面 本人參考安晓辉大侠的一篇博文后.做了Qt on android的GSP相关的实验.为了后面不时之需.故而记录下来. 1. Qt on Android GPS系统流 ...
- Qt for Android开发Android应用时的各种错误汇总(此片博文不成熟,请大家略过)
“Qt for Android真的很脆弱,项目能跑起来靠的是奇迹,跑不起来,各种报错才是正常...” 问题一:Qt for Android编译不过:make (e=2): 系统找不到指定的文件. 之前 ...
- Qt on Android: Android SDK安装
之前我在 <Windows下Qt 5.2 for Android开发入门>一文中介绍了 Windows 下 Qt on Android 开发环境的搭建,略过了 Android SDK 的安 ...
- Qt on Android 资源文件系统qrc与assets
使用 Qt 为 Android 开发应用时,有时我们的应用会携带一些资源文件,如 png . jpg 等,也可能有一些配置文件,如 xml 等,这些文件放在哪里呢?有两种方式:qrc和assets,咱 ...
- 加快QT工程编译速度(还可给Qt for Android设置)
一.多核编译 环境:win10, Qt 5.4.1,编译器mingw32 项目: Qt for Android Qt Creator 在编译android项目时不支持预编译,默认cpu单核编译,工程稍 ...
随机推荐
- Groovy&Gradle总结
欢迎大家加入QQ群一起讨论: 489873144(android格调小窝) 我的github地址:https://github.com/jeasonlzy 0x01 Groovy 概述 Groovy ...
- VS2008智能提示解决办法
最近在VS2008的代码编辑环境中,发现定义了一个类后,然后用类对象点不出对象的属性和方法,于是在网上参考一些资料. 具体步骤如下: 一.开始->Microsoft Visual Studio ...
- Python 第三方库的安装
1. pip 进入命令行,使用 pip install pip install numpy 2. 含有 setup.py 文件的第三方库 切换到 setup.py 所在的目录: python setu ...
- 从vue1迁移到vue2踩到的两个坑
先说第一个,在vue1中用v-for的时候,习惯性用$index和$key来取键.今天迁移到vue2之前,也知道vue2里不能这样用了,结果还是出问题了, 数据渲染不出来. <li v-for= ...
- 解决mysql连接异常—-com.mysql.jdbc.CommunicationsException: Communications link failure due to underlying exception
DBCP连接池连接MySql数据库时,一奇葩数据库设置为30秒内无请求自动断开.超时后链接无法关闭,活动链接数飞奔,最后挂掉. 网上找了一圈,一般是这三种,方法一pass,方法二测试无效可能设置错了吧 ...
- jQuery多库共存处理$.noConflict()
如果我们需要同时使用jQuery和其他JavaScript库,我们可以使用 $.noConflict()把$的控制权交给其他库.旧引用的$ 被保存在jQuery的初始化; noConflict() 简 ...
- C#并发集合
并发集合 并发集合 1 为什么使用并发集合? 原因主要有以下几点: System.Collections和System.Collections.Generic名称空间中所提供的经典列表.集合和数组 ...
- Python多线程 简明例子
综述 多线程是程序设计中的一个重要方面,尤其是在服务器Deamon程序方面.无论何种系统,线程调度的开销都比传统的进程要快得多. Python可以方便地支持多线程.可以快速创建线程.互斥锁.信号量 ...
- WPF中使用cefsharp
原文:WPF中使用cefsharp 新入职一家公司,由写服务端接口变成了软硬件通信.服务器.客户端.C/S.B/S乱七八糟各种打杂.首先接收一个WPF项目,因为不熟WPF,再加上前端我也不熟,我打算使 ...
- WPF编游戏系列 之五 数据绑定
原文:WPF编游戏系列 之五 数据绑定 在上一篇通过用户控件将重复使用的控件封装为一个控件组,大大减少了C#代码数量,本篇继续对该控件组进行数据绑定,节省为每个控件赋值的工作.对于数据绑 ...