学习QML还是C++?
2年前 (2024-04-27)
Qt4 时代的主流就是传统部件(或叫控件)编程,所用的语言一般是 C++。 Qt5 诞生之时,正是手机移动设备蓬勃发展的时候,而传统的 C++ 部件编写的界面对手机应用程序非常方便,比如手机屏幕显示随意翻转, 这在传统桌面程序里基本遇不到,谁会将 22 寸显示器翻过来转过去呢。
为了适应手机移动应用开发, Qt5 将 QML 脚本编程提到与传统 C++ 部件编程相同的高度,力推 QML 界面编程,当然 QML 主要用于手机移动应用程序。 QML 包含大量使用手机移动设备的功能模块,比如基本部件(QtQuick 模块)、GPS 定位、渲染、蓝牙、NFC、WebkKit 等等。
QML 类似于网页设计的 HTML,是一种标记语言,我们可以借助 CSS 对它进行美化,也可以借助 JavaScript 进行交互。有 Web 开发经验的读者学习 QML 将非常轻松。
既然 QML 有这么多优点,我们是不是可以不学 C++,直接学习 QML 呢?
非也!QML 只能用来进行界面设计和人机交互,也就是只能胜任 UI 部分,在底层仍然需要调用 C++ 编写的组件来完善功能,比如访问数据库、网络通信、多线程多进程、文件读写、图像处理、音频视频处理等都离不开 C++。
另外,现阶段的 QML 还不如传统的 C++ 部件编程那样拥有丰富的开发组件,尤其缺乏复杂的企业级应用程序所必须的树等控件。这就决定了少现阶段,真正大型的桌面程序仍然只能选择以 C++ 为主、QML 为辅的开发模式。
相信大部分读者都没有 Web 开发经验,学习 QML 成本还是比较高的,不但要习惯 QML 这种标记性语言,还要学习 CSS 和 JavaScript。
总的来说,C++ 对于 Qt 是不可或缺的,而 QML 只是一个加分项。
为了适应手机移动应用开发, Qt5 将 QML 脚本编程提到与传统 C++ 部件编程相同的高度,力推 QML 界面编程,当然 QML 主要用于手机移动应用程序。 QML 包含大量使用手机移动设备的功能模块,比如基本部件(QtQuick 模块)、GPS 定位、渲染、蓝牙、NFC、WebkKit 等等。
QML 类似于网页设计的 HTML,是一种标记语言,我们可以借助 CSS 对它进行美化,也可以借助 JavaScript 进行交互。有 Web 开发经验的读者学习 QML 将非常轻松。
使用 QML 开发界面主要有以下几个优点:
QML 非常灵活,可以做出非常炫酷的效果,例如 QQ、360、迅雷等都不在话下。
QML 是标记语言,见名知意,非常容易编写和阅读,大大提高了开发和维护效率。
QML 界面简洁大气,有很多动画,适移动端。
不同平台下的 QML 使用相同的渲染机制,界面效果一致,不会随操作系统的不同而变化。
既然 QML 有这么多优点,我们是不是可以不学 C++,直接学习 QML 呢?
非也!QML 只能用来进行界面设计和人机交互,也就是只能胜任 UI 部分,在底层仍然需要调用 C++ 编写的组件来完善功能,比如访问数据库、网络通信、多线程多进程、文件读写、图像处理、音频视频处理等都离不开 C++。
另外,现阶段的 QML 还不如传统的 C++ 部件编程那样拥有丰富的开发组件,尤其缺乏复杂的企业级应用程序所必须的树等控件。这就决定了少现阶段,真正大型的桌面程序仍然只能选择以 C++ 为主、QML 为辅的开发模式。
相信大部分读者都没有 Web 开发经验,学习 QML 成本还是比较高的,不但要习惯 QML 这种标记性语言,还要学习 CSS 和 JavaScript。
总的来说,C++ 对于 Qt 是不可或缺的,而 QML 只是一个加分项。
本教程只讲解 C++ 部件编程
C++依旧是 Qt 的主要编程语言,Qt 5 也并没有忽略它,Qt 5 添加了很多新的 C++ API,而且会持续更新。引入 QML 只是 Qt 5 提供的另外一种选择,并不是让它成为的选择。C++ 是 Qt 的基础,无论如何都要掌握,本教程也只讲解传统的 C++ 部件编程,不讲解 QML。
- 随机文章
- 不丹 马尔代夫 集锦(不丹和马尔代夫的精彩风光)
- 马尔代夫鹦鹉绿色(马尔代夫珊瑚礁上有鹦鹉绿光芒闪耀)
- 冰冻马尔代夫教程(攻略揭秘:如何游览冰冻的马尔代夫?)
- 中国马尔代夫游艇(中国豪华游艇掀起马尔代夫度假新浪潮)
- 千惠马尔代夫泳衣(千惠游泳衣:迎接完美的马尔代夫之旅)
- 中国 马尔代夫 比分(马尔代夫与中国足球队比分揭晓)
- 使命召唤马尔代夫(马尔代夫推出全新版本的使命召唤游戏)
- 印度马尔代夫国家(印度将帮助马尔代夫推动能源转型计划)
- 南非马尔代夫被困(南非游客困于亚美尼亚岛:等待救援中)
- 安庆马尔代夫美景(安庆出现马尔代夫美景,令人叹为观止)
- 广州马尔代夫直航(广州开通马尔代夫直航,方便旅客出行)
- 成都马尔代夫小岛(成都市区建成仿马尔代夫小岛旅游胜地)
- 图瓦罗与马尔代夫(图瓦罗和马尔代夫合作开辟旅游新篇章)
- 广东马尔代夫打工(广东青年岛国梦:马尔代夫打工赚钱记)
- 水上马尔代夫旅游(探索海底世界,享受水上马尔代夫之旅)
- 宜兴 马尔代夫(宜兴打造“马尔代夫”般美丽景色)
- 国语 马尔代夫(马尔代夫:水下世界的绝美奇迹)
- 将乐邓坊马尔代夫(马尔代夫旅游胜地——将乐邓坊度假村)
- 涿州马尔代夫美景(探索涿州马尔代夫美景,惊艳神奇世界)
- 翱翔 马尔代夫(马尔代夫上空翱翔:美不胜收的鸟瞰风光)
- 苏州马尔代夫地址(苏州市郭巷村打造的马尔代夫项目亮相)
- 绵阳马尔代夫仙海(绵阳游客驻足马尔代夫仙海享美丽沙滩)
- 重庆南坪马尔代夫(重庆南坪推出仿马尔代夫沙滩度假体验)
- 鄂州马尔代夫旅游(鄂州市民疫情后再次踏上马尔代夫海滩)
- 台风 马尔代夫(马尔代夫遭受狂风暴雨侵袭:台风袭击岛国)
- 马尔代夫优惠方案(马尔代夫出台优惠计划,吸引游客回归)
- 柏典 马尔代夫(重新探索马尔代夫的豪华度假村——柏典)
- 阳江 马尔代夫(阳江到马尔代夫直航,美丽海岛之旅等你来!)
- 马尔代夫代表建筑(马尔代夫建筑代表的设计特色及其意义)
- 科伦坡至马尔代夫(科伦坡直飞马尔代夫,首次开通直航!)
