クロスプラットフォームのUI/アプリケーション開発フレームワーク「Qt」を提供するフィンランドNokiaのQt Development Frameworks部門は、ドイツ・ミュンヘンで10月13日まで年次カンファレンス「Qt Developer Days 2010」を開催した。12日の基調講演では、Qt Development Framework部門のトップとアーキテクトがQtの最新機能や今後のロードマップについて語った。

まずは、Qt Development Frameworks担当副社長 Sebastian Nystrom氏が、ユーザーの要望という点から現在進めている強化分野について語った。

フォーカスは性能、Web統合、3D

Qt Development Frameworks担当副社長 Sebastian Nystrom氏

ユーザから最も要求が多いのは性能だ。ユーザーエクスペリエンスへのフォーカスと画面サイズなどの背景もあり、継続的に改善が求められている。Nystrom氏はQtの取り組みとして、まずハードウェアアクセラレーション関連のプロジェクト「Scene Graph」を紹介した。Open GL(ES) 2.0上でのQMLを改善し、グラフィックレンダリングパイプラインの簡素化、シーン最適化により性能を改善するという。「次期バージョンのQt 4.8に向けてScene Graphやその他の性能改善関連プロジェクトの成果を盛り込んでいく」とNystrom氏。

もう1つのプロジェクトが「Lighthouse」だ。組み込み端末上でのグラフィックアクセラレーションを支援するもので、「グラフィックアクセラレーションへのアクセスを高速化するだけでなく、プラットフォームの進化に合わせてQtを使い続けられるというメリットももたらす」とNystrom氏は述べる。

次に挙げたのがWeb統合だ。「ほとんとのアプリが何らかの形でWebと関係している。Webは重要な機能となっている」とNystrom氏。Qtは「WebKit」を統合した「Qt WebKit」を持つが、Webの進化の速度に合わせられるよう、モジュラー化によりQt全体のアップデートを待たずにQt WebKitの更新頻度を増やしていくとのことだ。このほか、HTML5とCSS3の準拠、タッチ、ジェスチャー、タクティルへの対応も進める。「ユーザーが組み込みとWebの違いを感じないようなユーザーエクスペリエンスを提供できる」(Nystrom氏)。Nokia自身も「Ovi Store」でQt WebKitを利用しているという。

このほか、新しいAPI、センサーからのデータ統合、3Dグラフィック作成用のC++インタフェース「Qt/3D」などの取り組みを紹介した。

OpenGL上でのQMLを改善し、パフォーマンス向上を図るScene Graph Project

対応プラットフォームはモバイル中心に

対応プラットフォームについての方針にも触れた。

Qtの大きな特徴は、開発したコードをさまざまなプラットフォームに実装できるクロスプラットフォーム性だ。対応プラットフォームを増やすというこれまでの方向に基本的に変わりはないが、Nokiaは市場の状況に合わせてプラットフォームへの投資を増減または維持していくという。

Windows、Mac、Linux/X11に対応するデスクトップは重要性が高い分野で、今後も投資レベルを保つ。組み込みLinuxも同じ投資レベルを維持し、モバイル(MeeGoとSymbian)では投資レベルを上げる。一方、AIX、Solaris、HP-UX、Windows CE、S60 3.1/3.2、Maemo 5では投資レベルを減らす。Qt 3のサポートも減少する方針だ。端末メーカーであるNokiaの戦略が反映された形となる。

なお、気になるモバイルプラットフォームサポートだが、カンファレンス中、数々の場で、「Android」「iOS」の2大人気スマートフォンプラットフォーム対応について質問があった。CTOのRich Green氏はじめ、Nokia幹部は「現時点では予定なし」と回答している(これについては、マーケティング担当のDaniel Kilhberg氏へのインタビュー記事で改めてレポートする)。

対応プラットフォームへの投資予定

Qt Quickは「新しいパラダイムだ。Qtにとっては、少なくとも過去10年で最大のニュース」と語るKnoll氏

Qt Development Frameworksでアーキテクチャ担当ディレクターを務めるLars Knoll氏は、最新版「Qt 4.7」の最大の目玉であるUI開発ツール「Qt Quick」について語った。

Qt Quickは2009年のカンファレンスでQt向けの新しい宣言的言語拡張「QML」として初公開した。9月末に公開されたQt 4.7で正式に機能として加わった。昨年のカンファレンスから1年、来場者の中にはすでにQt Quickを使っている人、実験的に利用している人が多数おり、評判は良い。確実にQt開発者に訴求しているようだ。

Knoll氏はQt Quick開発に至った経緯として、2年半から3年前、組み込みユーザーインタフェイスを作成していたとき、デザイナーの変更要求にすぐに応じることができなかった、というエピソードを明かす。「もっとシームレスに作業する方法、短縮する方法はないのかと考えた。そうやってQt Quick開発がはじまった」という。

そのような背景もあり、Qt Quickは、デザイン主導型、直感的なUI、高速なプロトタイピングとプロダクション、容異な実装などの特徴を持つ。「C++ QtDeclarative」モジュール、宣言的言語のQt Meta-Object Language(QML)、IDE「Qt Creator」サポートなどにより構成される。

Quickは「Qt UI Creation Kit」の略だが、Qt Quickは実際にQuick(迅速な)を実現する。コンパイルステップを省略、スクリプト言語にJavaScriptを利用した。HTML、CSSの知識があるとよいが必須ではなく、プログラミング経験が少ない人やデザイナーでも使えるという。Qtがサポートするすべてのプラットフォームで動き、Webにも対応する。「生産性が大きく改善し、なんといってもプログラミングが楽しくなる。われわれは"楽しい"を大切にしている」とKnoll氏。

Knoll氏は会場で、紐がついた風船をクリックすると破裂するというプログラムを作成して見せた

Knoll氏は最後に、Qt Quickの今後の強化について語った。現在、フル機能を備えたデバッガ開発プロジェクト「QML Observer」が進んでいるという。アプリケーション起動中にバリューを変更したり、レイアウトの構築やイテレーションが可能で、「開発とテストサイクルをさらに短縮できる」とのことだ。