meego的皮 -- QT Quick
随着android和ios的兴起,很多人都在看衰nokia。认为nokia的时代即将过去,但是最近接触了一下meego相关东西,发现事实可能并不会像想象中的那样,个人感觉meego相对于同质化的android和相对封闭的ios优势还是很明显的。首先meego是一个全开源的平台,而不像android是一个半开源的平台,这样就不会使得所有的开发商都围绕着一个人转,出现大部分的机型都有很大的相似性。同时又不会像ios那样因为过于封闭而使得开发的门槛始终很高。meego从去年到现在虽然还没有一款手机出世,但仍然被很多人看好。同时meego的一个重要的开发工具QT将会实现平台真正的无缝对接,大大减少了开发人员的工作量,这势必会吸引更多的开发者加入到这个队伍中来。接下来想重点讲一下本人对qt quick的认识和看法。
QT quick虽然已经不是什么新的东西,但据来自nokia的一些消息称,它将会取代MTF成为meego新的UI构建库。而且很有可能在meego1.2的版本中发布(虽然最新的meego1.12版本中仍然用的是MTF).个人最近在看QT quick接下来可能会写一些关于它的文章。就个人使用感受来看,QT quick应该更易用,更灵活,更多变。当然在QT4.7的版本中还不能实现某些MTF的特性,但其优点依然很明显。接下来就简单介绍一下QT Quick.
Qt Quick:Qt user interface creation fit ,翻译成中文就是创建Qt用户界面的工具集。它是一个高级的用户UI开发技术,它也具有动画等特效,开发人员和设计人员可以通过它更好的实现协同开发。它主要是通过一个类java script的描述性语言--QML来实现快速高效的开发的。
QT Quick主要包括三大块:
QML(Qt Meta-Object Language):是一个声明性的脚本语言,语法格式非常像CSS(参考后文具体例子),但又支持javacript形式的编程控制。在QML里面元素同Windows的UI元素组织结构一样是树形结构。
Qt Designer:在 Qt IDE中的直观工具,用于辅助QML的设计开发。
Qt Declarative:QT中的一个C++模块,它充当QML语言的解析器。
因为QML是一种描述性脚本语言,这样使得开发使用Qt Quick进行开发的门槛变低,易用性变强。同时QT为其实现了更加多样和流畅的动画感受。