Qtブログ(日本語)

Qt 5 に向けて

作成者: 鈴木 佑|Sep 8, 2012 11:18:36 AM

この記事は Qt Blog の "Towards Qt 5.0" を翻訳したものです。
執筆: Lars Knoll, 2012年9月7日

Qt 5 のベータ版をリリースしてから数日が経ちました。この記事では今後数ヶ月の予定と Qt 5.0.0 の正式リリースについてお話したいと思います。

Digia への移動

最初の重要事項は Qt の Nokia から Digia への移動ですが、これは第三四半期中に完了する方向で進めています。私個人も Digia へ移り、そこで Qt を続けるという選択をしました。これまで Digia との間で様々な議論が行われてきましたが、Qt 自体およびオスロとベルリンの開発チームにとってはとてもいい機会になると私は確信しています。

私の見た限りでは、Digia には Qt に対する信頼できる長期的な戦略があり、製品への強いフォーカスで、Qt 5 を推進し、Qt を最高の開発ツールにしてくれるでしょう。Qt の獲得は Digia にとっては大きな決断でしたが、Qt が将来的に非常に重要になると信じている証拠でもあります。

Digia は Qt のエコシステムをマーケットの中の他のプレイヤーとともに成長させたいと思っています。エコシステムを共有する事の重要性や、Qt のエコシステムにおけるデュアルライセンスモデルの重要性も理解しています。

現在 Qt の商用版を販売している部署にとっては、Nokia から移動する予定のチームは非常に重要な意味を持つでしょう。Nokia から移る人のほとんどは開発者で、実際には元 Nokia のチームが Digia の開発チームの大半を占めることになります。

もちろん Digia に移動することは Nokia の Qt のメンバーにとっては変化ですが、良い方向への変化であると私は信じています。例えば、仕事のフォーカスはユーザーの要望への対応をより重視し、フィードバックをいかに速いサイクルで製品に反映させるかといったところに移るでしょう。これは個人的にとても楽しみにしているところです。

しかし、変わらないこともあります。我々は製品開発への強いフォーカスを続け、Qt によって可能になる新しい世界を推進していきます。仕事の大部分のフォーカスは短期的にも長期的にも Qt 5 が中心になるでしょう。

Qt 5.0 の正式リリースに向けて

現時点で一番重要なことは Qt 5 をリリースすることです。Qt 5 のベータでは主要なプラットフォーム向けのバイナリの提供もはじめましたが、まだ不足しているものもいくつかあります。Qt 4.x でリリースしてきた Qt SDK のような形で、Qt 5.0 のリリースには Qt Creator も含めたいと思っています。

月曜日にオスロで開催したワークショップでは、現在対応が必要な項目を明確にする作業が行われました。通常のバグ修正の他にもいくつかの項目が浮上し、以下のものを最優先で対応することに決めました。

  • ドキュメント
    個々のクラスのドキュメントは OK な状態ですが、それらをまとめるために必要な作業が残っています。Qt の概要やそれぞれのモジュールについての紹介、最初の段階のヘルプ的なものや、良いリンクを集めたスタートページが今のところありません。Qt Essentials と Add-ons の違いを明確にし、各モジュールを横断できるようにする作業がまだ残っています。これに対応するためのチームをオスロに結成しました。
  • サンプルとデモ
    Qt の既存のサンプルには昔からあるものも多数あります。すべてのサンプルに目を通して整理をする予定です。おそらく Qt 5.0 では多くのサンプルが削除され、小規模かつ質の高いサンプル集となるでしょう。
  • リファレンスプラットフォーム対応の完了とテスト
    主にバグ修正とテストですが、これは非常に重要です。いくつかのプラットフォームではそれ以外に比べて多くの対応が必要となるでしょう。Windows では、問題のある OpenGL ドライバやリモートデスクトップの問題を回避するために、ANGLE (DirectX 上の OpenGL 実装) へとデフォルトを変更する予定です。これによりマルチメディア機能や WebKit の対応も簡単でパフォーマンスも良くなるはずです。もちろん、通常のデスクトップ向けの OpenGL ドライバにも対応する予定です。

    Mac と Linux でも様々な小さな問題やマルチメディア機能への対応が残っています。

    WebKit 2 と WebKit の QML モジュールはベータでは使用できませんでした。WebKit チームは現在すべてのリファレンスプラットフォームでこれらが動作するよう頑張っています。

  • Qt Creator
    Qt Creator もバイナリパッケージに含める予定です。ベルリンのチームは現在、Qt 5 でできるだけスムーズな開発が可能になるよう作業を進めています。
  • パッケージング
    最後に、すべてのパーツをまとめたパッケージが必要となります。ベータのパッケージングから学んだことは、この作業に対する見通しがあまかったということでした。これもしっかり対応するべき項目です。

なるべく早くにベータ2を提供したいとは思っていますが、上記の項目のほとんどが解決した段階でのリリースとなるでしょう。現実的な日程としては、おそらく4〜6週間後になると思われます。その後はリリース候補版、そして正式版に向けた作業を進めていく形になります。

長期的な展望

チームが Digia へ移動し、Qt 5 の正式リリースに向けた作業を行うのと並行する形で、新しい事への対応も予定しています。すでに Digia は Android や iOS の対応など重要な分野において公にコミュニケーションをはじめています。さらに、ベルリンとオスロのチームでも様々なアイデアが誕生しています。

今は様々なアイデアを集めて優先順位をつけているところですが、ゴールは我々がやっていくこと、もしくはやっていかないことをできるだけオープンで透明性の高い形にすることです。無駄な重複を避け、またみなさんが Qt Project に参加して頂ける機会を提供することを目的としています。