「Qt World Summit 2019」「Qt Contributors' Summit 2019」参加レポート

#001 Qt活用の最前線に触れる―「Qt World Summit 2019」レポート

この記事を読むのに必要な時間:およそ 9 分

2019年11月にドイツ,ベルリンにて開催されたQtにまつわる2つのカンファレンスのレポートを連載形式でお届けします。1回目は一足先に開催された「Qt World Summit 2019」の模様をレポート。もう1つのカンファレンス「Qt Contributors' Summit 2019」のレポートも続いて公開の予定です。

はじめに

2019年11月4日~6日の3日間,ドイツのベルリンで,The Qt Company社主催のカンファレンス「Qt World Summit 2019」⁠QtWS)が開催されました。会場はベルリンのbcc Berlin Congress Centerでした。筆者は昨年Qtチームの所属となり,Qtに関わるさまざまな案件を経験した上で,今回Qtの知識を深めることを目的にQtWSに初めて参加しました。本記事では,実際に参加した模様をレポートします。

画像

QtWSは,C++のクロスプラットフォームアプリケーション開発フレームワークであるQtの世界的なカンファレンスです。Qt本体の開発者が集まり,長期的なトピックに対して議論する「Qt Contributors' Summit」に対して,QtWSはQtの使用者が,短期,中期的なトピックについて学び,ユーザ同士での情報共有の場という位置づけになります。

今年のQtWSは,ドイツで3日間の開催,また「Qt World Summit」というタイトルでは初めて日本でも開催(11/29)されました。ドイツで開かれたQtWSは開催期間が3日間と例年通りの日数です。ドイツ,日本の開催ともに,Qtの最新情報を取り上げている点は共通しています。しかし,日本での開催ではトレーニングデーがなく,セッション数もドイツよりも少ないです。今回参加したベルリンではさまざまなトピックがバランス良く扱われていました。全体としては,アプリケーション開発やテスト関係のトピックやセッションが多い印象を受けました。

QtWSの内容としては,例年同様,初日はトレーニングデーとしてスポンサー企業によるトレーニング行われます。2日目,3日目はカンファレンスデーとしてキーノートやセッションが行われました。また例年,カンファレンスデーにはスポンサー企業によるデモブースが設置されますが,今回は1日目のトレーニングデーの終わりから,デモブースが設置されていました。

ここからは大きくトレーニング,キーノート,セッション,デモブースに分けてそれぞれの内容を記載します。

トレーニング

トレーニングデーを受講するには,QtWS申込時に希望のトレーニングコースを選択する必要があります。今年は,以下の8コースが行われました。

  1. Modern OpenGL: Advanced Pipeline and Performance
  2. Introduction to Qt3D Studio
  3. Introduction to CMake
  4. Qt GUI Testing with Squish
  5. Modern C++ – What⁠s New in C++17?
  6. Multithreading in Qt
  7. Profiling & Debugging for Linux
  8. Introduction to QML

筆者は,⁠Introduction to QML」を受講しました。受講者は申し込み後に,講義で使用するサンプルコードを受け取りあらかじめ動かせる状態にしておく必要があります。

画像

このコースは,KDAB社のJan Marker氏により,QMLの開発手法に興味がある人を対象に,主にスライドを用いた講義形式で進みます。サンプルコードは,そのスライドで説明する内容に特化しており,実際にコードを変更しながら動きを確認することで説明されているポイントが理解しやすいようになっていました。

このコースには約40名程度の受講者が参加しており,部屋も今回のトレーニングの会場で最も大きい部屋で行われました。講義の中で参加者のQMLの使用経験などを尋ねていましたが,本コースの受講者は,QMLでの開発経験がない人や浅い人が多く参加していました。

トレーニングでは,最初に説明に使用するスライドの印刷物がテキストとして配布されました。講義ではあらかじめ配布されていたサンプルコードを動かしながら,QMLで開発する際のポイントを説明していました。講義の流れとしては,Qt全体の話から始まり,Qtが使われているアプリケーションの紹介があり,その後,Qt Quickの導入の説明があり,実際にQMLでコーディングするときに注意するべき点,QMLとC++の連携方法などの説明がありました。QMLで開発に利用されるであろう機能や考え方について幅広く実際に動くコードを利用しながら理解することができました。講義の最後には質疑応答があり,その中でもプロパティバインディングに関する質問やC++との連携についての質問が多くありました。

コースの資料は400ページを超えており,元々3日間の内容を1日で実施しています。そのため,トレーニング終盤では駆け足の説明になった部分もありましたが,資料全てに説明があり,あとから参照してもわかるように細かな部分まで配慮して資料が作成されていました。また,コースで使用したサンプルコードは,資料内でどのサンプルコードがそのページの内容に対応しているのか記載されているためこれらも合わせて復習するのもよいと思います。

著者プロフィール

田中智史(たなかさとし)

株式会社SRAのエンジニア。2018年からQtチームに配属され,Qtのアプリケーション開発を担当している。