Qt 5.7の最新情報も発表─「Qt World Summit 2015」レポート

はじめに

ドイツのベルリンで10/5~10/7に開催されたQt World Summit 2015に、今年は株式会社SRAから5名が参加しました。著者は今年度からQt専任の開発者となったことから、SRAの技術者育成のための投資制度を活用してこのイベントに参加してきました。ここではその模様をレポートします。

Qt World Summit は、昨年まで「Qt Developer Days」という名前で開かれていた、マルチプラットフォームGUI開発フレームワーク「Qt」の開発者やユーザが集まるカンファレンスです。主催がこれまでのKDABからThe Qt Companyに代わり、それに伴って名称変更となりました。会場は昨年と同じBerlin Congress Centerという会議施設で、ベルリンのアレクサンダープラッツ駅から至近でとてもアクセスしやすい場所にあります。

なお北アメリカで開催されていたQt Developer Daysは、今年はRoad Showと名前を変えてサンフランシスコ、ヒューストン、ボストンでそれぞれ4/30、5/5、5/7に開催されています。

会場となったBerlin Congress Center
会場となったBerlin Congress Center 会場となったBerlin Congress Center

Qt World Summitは、初日は初心者でも安心して受講できるトレーニングが、残り2日はキーノートとQtの最新情報や使用上のアドバイス等を聞けるセッションが設けられています。そのため、初心者から熟練者までの幅広い層がQtへの理解を深める場であるのに加え、開発者や他のユーザとの親交を深める場でもあります。今年は世界35ヵ国から約850名(初心者数と経験者数は半々)が参加し、大変活気溢れるイベントとなりました。

トレーニングデー

10月5日のトレーニングデーでは以下に挙げる全8コースから1つを事前に選択し受講することになります。

  • Introduction to QML – also known as Qt Quick
  • Model/View programming in Qt
  • Debugging and Profiling Qt applications
  • What’s new in C++11/C++14 (with a Qt5 focus)
  • Introduction to Multithreaded Programming with Qt
  • Introduction to Modern OpenGL with Qt
  • Qt for Mobile Platforms – Android/iOS
  • Introduction to Testing Qt applications with Squish

トレーニングはQtのパートナーであるKDABの社員が講師を務めます。

トレーニング会場への案内板
トレーニング会場への案内板

この中から私は「Model/View programming in Qt」に参加しました。このコースはスライドを使っての講義形式で行われました。簡単な説明をした後にその場でコーディングする形式で進められ、講師が受講者の理解を深めるために説明の合間で質問し、50人以上の受講者が参加していたにもかかわらず、疑問や質問があれば一人ひとり即座にかつ丁寧に応えてくれました。

講義内容は、GUIアプリケーション開発を強力にサポートできるツールQt QML(Qt Meta-Object Language)の機能の一部であるmodel/view の機能紹介とそれを使用した簡単なプログラムのデモンストレーションでした。具体的には、model/viewクラス中の3つのコンポーネント(model、view、delegate⁠⁠、4つのModel ⁠List Model⁠⁠、⁠Table Model⁠⁠、⁠Tree Model⁠⁠、⁠Proxy model⁠⁠、さらに「Item View」「Delegate」について説明がありました。これらは、画面上でデータをどのように表示するか(テーブル表示やツリー表示など)を制御することができます。

この講演で作成したコードは事前に配布されており、英語に自信の無い私でも十分に内容を把握することができました。トレーニングセッションの終了後は修了書が受講者全員に配布されました。

キーノート

10/6の午前にQtの最新情報や今後の方向性を講演するキーノートが行われました。トレーニングは受講せずにこの日から参加する人も多く、会場は初日以上に多くの人で溢れていました。それだけの人が集まる中、The Qt Company の Global Marketing Communication 部門長であるKatherine Barrios氏のウェルカムスピーチが行われ、講演がスタートしました。

キーノートでは全6つの題材で計8人の方がスピーチされています。内容で大別すると以下の3つになります。

  • (1)The Qt Companyとしての現状と今後
  • (2)⁠Qt」を用いて開発された製品の紹介
  • (3)Qt の新機能について

キーノートの動画はYouTubeにアップロードされているので、いつでもご覧になれます。

The Qt CompanyのCEOが描く「未来」

最初のキーノートの前半はThe Qt CompanyのCEO、Juha Varelius氏が講演を行い、後半は製品管理部門長のPetteri Holländer氏が壇上に立ちました。前半の講演ではQtが現在どのような分野に関心を示しているか、さらに先の未来をどう描いているかについて述べられました。

キーノートの模様
キーノートの模様 キーノートの模様

講演中に「Automotive」という言葉が何度も出てきましたが、これは今年のQt World Summit のキーワードの1つになっていました。講演の中で、iPhone がタッチパネル市場に参入してからタッチパネル技術には⁠簡単な操作性⁠⁠使って楽しい⁠といった要素が必要とされ始めたこと、さらに今ではそれが標準になり今後より一層あらゆる製品にユーザーエクスペリエンスが求められていくこと、ソーシャルメディアなど多くの製品がインターネットにつながり世界中の人々と共有されていくであろうこと、について触れていました。その考えのもと、とても多くの人々に影響を与える自動車産業に注目しているそうです。

また、将来あらゆる製品がインターネットにつながるようになった次の段階として、家の中にいながらあらゆる場所につながるヒューマンインターフェースデバイスを持つようになる、と予言していました。そのような未来が来たとき、デバイス使用状況などのビッグデータをいかにして蓄えていくか、またそれを解析して何を提供するか、それらは非常に大きなビジネスになるのではないかと考えているようです。

Qt Automotive Suiteについて

Juha Varelius氏が話し終えるとPetteri Holländer氏が壇上に上がり、10月1日に発表した、提携会社のKDABとPelagicoreと共同開発した車載用インフォテインメント(Information⁠情報⁠+Entertainment⁠娯楽⁠を合わせた造語)システム開発支援用ツールである「Qt Automotive Suite」について述べていました。

車載用インフォテインメントシステムを構築するとき、多くの自動車メーカやプロバイダは技術的ソリューションの管理部分で似た問題に直面しているそうです。Qt Automotive Suite はその問題を解決することを目的とした開発ツールであるため、メーカやプロバイダはエンドユーザに価値を与えることに集中することが可能となるようです。SRAも、Pettriを中心にThe Qt Companyと世界の中でも注目される日本の自動車産業がどう関わっていくかを意見交換しています。

ビッグデータ社会を迎えて

2つ目のキーノートでは、ビッグデータについて経済学者 Kenneth Cukier氏が発表しました。

ビッグデータは現在にも将来的にも非常に重要なため、⁠ビッグデータとは何か⁠⁠、⁠ビッグデータは何故重要なのか」についてきちんと理解しなければいけないと注意しています。彼はまず「データ」「ビッグデータ」を定義してから、周辺技術として「機械学習」について触れ、自動翻訳や音声認識、自動運転、ガン細胞の自動検出といったその技術の応用例を挙げていました。また、データ収集解析をするときは、どのような価値を生むか、いつなにが起きるか、どのような変化があるか、どのようなリスクがあるか、などを考えることの重要性についても述べていました。

自動車産業の次なる販売フィールドとは

講演3つ目のキーノートとして自動車産業からOpenCar,inc.のCEO、Jeff Payne氏が登場しました。この講演の大部分はソフトウェアでなく自動車産業の現状と問題点に焦点が置かれていましたが、The Qt Companyが発表した「Qt Automotive Suite」と深く関連している内容でした。

自動車産業の現状としてプラットフォームが標準化されていない問題があるそうです。特にメーカに直接納品する1次サプライヤーは消費者の期待値を上昇させながらそれを実現する必要があるため、より効率的に開発することが極めて重要となると述べていました。そこで、OpenCarではこれまでのHTML5を基盤にした開発をQtメインへ移行しており、それを最優先課題として取り組んでいるそうです。

次世代のLG家電Smart TV

4つ目のキーノートとして、アジェンダには記載されていない、LG WebOSプラットフォームチームの開発者であるTorsten Rahn氏が登場しました。彼はQtが今後どのように利用されるかをLG製品の紹介とともに説明していました。

画像

LGが注力している商品のひとつに、WebOSという新しい技術を用いたSmart TVがあります。この技術はLinuxをベースとなっており、HTML5、CSSやJavaScriptを使用したWebアプリケーションを開発することで様々なシステムと統合可能なことと、マルチタスク機能によりスワイプやジェスチャーを使ってプロセスの切り替えが特徴となっているそうです。そのUI部分にQt Quick 2を使用することにより、ユーザエクスペリエンスデザインが可能となり、革新的なアイディアを素早くソースコードや製品を変換してくれる可能になった、と述べていました。

会場では実機を使用して、マウス移動やクリックといった動作がシームレスに動くことや、QMLを利用した画面表示、他にもボタンやアイコンなどさまざまな部分でQtのUI開発技術が応用されていることをデモンストレーションしていました。

オーディオ機器の音響制御

5つ目の講演では音響業界からHoloplotのCEO, Andreas Schmid氏とKDABのグローバル販売部長兼マーケティング&ビジネス開発部長 Till Adam氏の二人がスピーチしました。冒頭では Holoplot 3D Audio Wallと呼ばれる1,000個のスピーカーユニットで構成された壁のようなオーディオから音楽を奏でるパフォーマンスをして観客を沸かせました。Qtはこのオーディオの音響制御を担う組込ボードや、設定用のデスクトップやタブレットのアプリケーションなどに使われているそうです。

彼らは、Qtはコードの再利用や新しいオーディオのソースコードとの素早い統合や結合テストができること、それが短期間での市場販売に結び付けられること、さらに今後市場に出てくる全てのハードウェアやOSさえも選択可能であること、と結論づけていました。これはあらゆる分野で極めて大きなメリットだと思います。

Qt Today and Tomorrow

最後にThe Qt CompanyのCTO、Lars Knoll氏が登場すると、Qt 20周年のお祝いを皮切りにしてスピーチが始まりました。

Qtはこれまでアプリケーション開発やUI作成のフレームワーク分野でリードしてきました。多くの会社はQtを利用することで「ユーザーエクスペリエンス」を含むスマートフォンやタッチパネルなどの製品を素早く開発することに成功しているようです。彼はそれらを可能にするQtの特徴について挙げていました。

  • 製品開発のツールキットとして多様な製品へ対応可能
  • FOSS(Free/Open Source Software)コミュニティの堅守
  • 最新の技術やこれからの技術に対しても素早い対応が可能
  • 高品質で信頼性のあるクロスプラットフォームなデスクトップアプリケーション開発が可能
  • ユーザーエクスペリエンスを可能にするスマートフォンやタブレットなどのモバイルアプリケーション開発が可能
  • GUIやエコシステム、SDK全体に対する強力なデバイス開発が可能
  • これらの開発にIoTを取り入れることが可能

今後のQtの動向としてやはり気になるのは、Qt 5.6でどのような機能が追加されているのかだと思います。Qt 5.6はα版が2015年9月8日に既にリリースされており、年内に正式リリースする予定となっています。また、これまでにも検討を行っていたLTS(Long Term Support)版のリリースですが、Qt 5.6 に向けて新しいCI(Continuous Integration)システムを開発したこともあり、Qt 5.6を3年間サポートするLTS版としてリリースすることになりました。さらに、誰もが予想していなかったQt 5.7も紹介され、会場がざわついていました。

画像

Qt 5.6の新機能

Windows 10 と Visual Studio 2015のサポート対応

Windows 10 の完全サポートに加えて Visual Studio 2015が正式にサポートされます。

OS X 10.11 El Capitanの対応

OS X 10.10 に加えて10.11に対応することが決定しました。

Cross-platform High-DPIのサポート対応

これまでプラットフォーム別に行ってきていた高解像度ディスプレイへの対応がクロスプラットフォーム化されます。

Qt 3DやQt Canvas 3D、Qt WebEngineのアップデート

Qt 3D では、OpenGL、C++やQMLからのバッファーデータ生成、glTFへの対応、Scene3Dでのマルチサンプリングコントロールなどがサポートされ、マウス入力と衝突検出がAPIになりました。ただし、Qt 3D自体はテクノロジープレビュー版のままで、正式リリースは5.7以降へと見送られました。Qt Canvas 3D では、テクスチャ機能やQt Quick Sceneへの直接的なレンダリングがサポートされます。Qt WebEngineでは、PEPPERプラグイン、Linux 上のシステムライブラリとの切り離しやリンク、global Qt proxy設定がサポートされ、shared low-level API の QtWebEngineCoreモジュール、カスタムURLスキームAPIや、接続要求の遮断やブロックするAPI、クッキーをトラッキング/ブロッキングするAPIが追加されます。

Qt Location

Qt Location モジュールに地図機能やナビゲーション機能、位置機能といったAPIが新しく加わります。

新しい技術の試験的導入

以下のモジュールがテクノロジープレビュー版としてQt 5.6に追加されます。

①Qt SerialBus

CAN(Controller Area Network)バスやModバスにアクセスするための汎用シリアルバスモジュールです。

②Qt Speech

TTS(Text-to-Speech)エンジンへのアクセスや使用するためのクロスプラットフォームAPIライブラリです。

③Qt Wayland Compositor

QtでWaylandのコンポジター(ウィンドウマネージャ)を作成するためのAPIです。

④New Qt Quick Controls for Embedded

特に組み込みデバイス用にデザインされたQt Quick Controls 2.0を追加しています。

Qt 5.7に導入予定の機能

C++11への対応を強化

これまではオプションとしてC++11の機能をQtで使用してきましたが、メジャーなコンパイラーでのC++11への対応が進んできたことから、Qt 5.7ではC++11が必須要件となる予定です。これによりQt内のコードの最適化や保守性が上がることが見込まれています。

Qt 3D、Qt SerialBus、Qt Speech、Qt Wayland Compositor、Qt Quick Controls Story

これらのモジュールはQt 5.6ではテクノロジープレビュー版としてリリースされますが、Qt 5.7で正式にサポートされる予定です。

State Machine FW(SCXML)および関連ツール

State Machine FW(SCXML)の関連ツールを追加予定です。

2日間のカンファレンス

カンファレンスでは大きく5つのテーマに分類され、30分、または60分のセッションが全59講演開かれました。これらのテーマは、⁠Introductory Qt」と題する比較的ビギナー向けもあれば、最新リリース版のQtの紹介やHowTo、デバイス開発に至るまでとても幅広い分野の内容で講演されており、ビギナーであれば理解を深められ経験者であれば視野を広げられる工夫がなされていると感じました。

The Qt Company が推進しているAutomotiveについても ⁠Qt in Automotive」として7つのセッションが行われました。技術系のセッションとしてはWindows 10対応や、マルチプラットフォーム対応、ユーザエクスペリエンスデザイン関連、Qt3D関連、去年から引き続きモバイル向けやそれ以外にも多数ありどれも非常に興味深かったです。

私が参加した中で、⁠The 8 mistakes of Qt Quick newcomers」というセッションは題名もインパクトが強く印象深い内容で、QMLを使用するときにビギナーが行い易い8つの行為を非常に分かりやすく指摘していました。例えばQMLはJavaScriptと異なることを意識させる内容や、ビジネスロジックとGUIは分離すべきといった内容等がありました。講演者は冗談も交えた説明をすることで受講者の心を掴み、加えて議論も活発であったため立ち見がでるほどに大盛況でした。

カンファレンスの一風景
カンファレンスの一風景

この他にも「Effective Qt」「Effective QML」などのパフォーマンス関連のセッションはやはり注目度が高く、どちらも満員となっていました。

また、セッション全体の印象としては、難易度の高い内容もありますがビギナー向けのセッションも多く、比較的分かりやすいと感じました。それは、カンファレンス参加者の半数がビギナーということからも納得でき、そのビギナーの多さはこれから「Qt」を導入しようとする人が多く世界中から注目されている証だと思いました。カンファレンスの動画も公開されましたのでぜひご覧ください。

Qt World Summit カンファレンス
URL:http://www.qt.io/resource-center-qtws15-session-listing/

デモブース

例年セッション以外にもQtパートナーなどによるデモブースが設けられています。今年もパートナー/スポンサーのKDAB、ICSや、 QNX、Qt専用の自動テストツールSquishを提供しているfroglogic、オープンソースのデスクトップ環境を開発しているプロジェクトであるKDEなど、さまざまなブースでいろいろな製品やソリューションの展示、技術デモが行われていました。

画像

The Qt Companyのブースでは、Qt 5.6以降の機能のデモが多く、Qt Wayland CompositorやHigh DPI, Qt Quick Controls 2.0, Qt Virtual Keyboard 2.0などに加えて、Jolla TabletやVxWorksなどのパートナーの展示や、Automotiveに関連してクラスターメータのコンセプトUIなどが展示されていました。どの展示ブースも非常に盛況で休憩時間中は絶えず展示を見ている人たちがいるような状況でした。

画像

最後に

今年の Qt World Summit 2015 にはトレーニングデーに約390名、カンファレンス全体で約850名の参加者ということで年々参加者も増えています。また、今年のキーノートでは産業分野の方々だけでなく経済学者も講演していました。それだけ「Qt」が世界中で利用されさまざまなフィールドに影響を与えているという証拠であり、今後もその需要が増えることが予想されます。来年は1000名の参加を目指したいとの言葉もキーノートで聞かれました。そのような活気あふれる場に参加できることは、私のような若手にはとても有意義で刺激となる3日間でした。

キーノートやセッションの映像は、YouTubeで公開されています。ぜひ一度ご覧ください。プレゼンテーション資料についても公開される予定です。詳しくは以下の公式サイトを参照してください。

Qt World Summit
URL:http:/www.qtworldsummit.com/

おすすめ記事

記事・ニュース一覧