qtではじめるクロスプラットフォーム アプリケーション開発 ...qtの歴史....
Post on 30-Mar-2021
0 Views
Preview:
TRANSCRIPT
Qtではじめるクロスプラットフォームアプリケーション開発 OSC2019 Hamanako
10 Feb 2019
自己紹介 浅野 一雄(Asano Kazuo)
> 日本Qtユーザー会 所属
> Qt Champion2018のひとり
> 名古屋方面で月1でもくもく会を開催しています
> Qtの本も書いたりしてます。
> @kazuo_asa
本日の内容 >Qt概要
>Qtの特徴
>最新のQtをつかってみよう
>もっとQt
Qt概要
Qtとは
高速な動作と、簡単でわかりやすい C++ / Python クラスライブラリと アプリケーション開発ツール
Qtで作られているもの Kindle Desktopアプリ LINE Desktopアプリ
adobe element organizer
LeME(電子書籍の作成)
Bit coin Core Guitar(Gitクライアント)
Qtで作られているもの Panasonic Avionics
飛行機設備 Tesla Model SのUI Medec Benelux
手術室麻酔人口呼吸器
formlab Form2 3Dプリンタ
Wittenborg コーヒーメーカー UI
Hasselbland カメラ UI
LG smartTV webOSアプリ
Qt3
Qtの歴史 Trolltech社からリリースされ、ここからちゃくちゃくとプラットフォームをふやしていく事になる。
1st Public Versionをリリース NokiaがMicrosoftと携帯電話事業を提携。Windows Phoneの採用を進める事からQtい
らない子に!
$153Mで買収される。Nokiaの携帯電話プラットフォームのSymbian/MeeGoの開発ツール
としてサクッと売られる.....。
NokiaによってTrolltech買収される DigiaのQt事業部を分社化して、Qt開発に専
念する独立した会社を立ち上げる。
Qt Projectの立ち上げ
2016
1995 2012
2008 2014
DigiaによってQt関連事業を Nokiaから買収される
Qtによる開発支援・プロダクトの強化として設立。今まで英語でしか対応できなかったQAが
日本語でも対応可能に!
The Qt Company 日本支店設立
親会社のDigiaからスピンオフしてQtの開発に専念する事。このときから、Webサイトも
www.qt.ioになる。
The Qt Company発足
1999 2001 2005 2012
5.6.3TLS 5.9.7TLS 5.12.1LTS (2019/2/1)
2016 2017
Qt1 Qt2 Qt4 Qt5
2018
Qtのライセンス体系 Qt オープンソース ライセンス
> GNU LGPL v3が適用 > RTOS関連(QNX , INTEGRITY)を使うには オープンソース版はちょっと苦しい。
Qt 商用(Commercial) ライセンス > 有償(1開発者当り、毎年発生) (オープンソースライセンスとの違い) > 付帯機能に対してもLGPL v3除外 > 組み込み関連のサポート/便利機能 > Qt Companyのサポート
オープンソースライセンスについては、 [Qt ライセンスについて – Qiita @yunma](https://qiita.com/ynuma/items/e8749233677821a81fcc) Qtライセンスの詳細は、 [Get Qt](https://www.qt.io/download)
Qt Communityの現状
参照: https://www.macieira.org/blog/qt-stats/
> 歴史が長いCommunityだが Total Commit数(上) / Commitユニークユーザー数(下)は継続的にある。
Qt Communityの現状
参照: https://www.macieira.org/blog/qt-stats/
直近16週分のCommittersドメイン毎の比率 > 5~15%は、個人(Community)によるCommit=赤 > The Qt Companyが継続的にCommit=青
qt.ioについて > www.qt.ioの場合、英語になってしまうが www.qt.io/jp/ へアクセスすると日本語ページに
Qtの特徴
Qtはマルチプラットフォーム対応 デスクトップ(C++ / Python) > Windows, Linux ,Mac OS X モバイル (C++) > Android, iOS, Universal Windows Platform 組み込み関連 (C++) > Embedded Linux, Windows Embedded QNX, INTEGRITY, VxWorks
サポートしているプラットフォーム詳細 : [Supported Platforms](http://doc.qt.io/qt-5/supported-platforms.html)
各種ソフトウェア機能安全にも対応 IEC 61508:2010-3 7.4.4(SIL3) - 電気/電子/プログラマブル 機能安全プログラミング言語を含む支援ツールの要求 ISO26262:2011-6/2011-8 ASIL D - 自動車ソフト機能安全 IEC62304:2015 – 医療機器ソフト機能安全 EN50128:2011 6.7.4(SIL4) - 鉄道用ソフト機能安全 > Qt Safe Rendererを利用して機能安全認証を取得した アプリケーションUIの作成が可能。
機能安全認証 詳細 : [Released and Certified: Qt Safe Renderer ? An ASIL-D Functional Safety Solution] (https://blog.qt.io/blog/2018/05/31/function-safety-certified-qt-safe-renderer/)
C++で利用できるたくさんのモジュール QtCore QtGui
QtWidgets QtMultimedia
QtSql QtXml
QtSerialPort QtNetwork
QtNetworkAuth QtWebEngine
Qt Quick Qt 3D
QtPositioning QtSensors
QtBluetooth QtNfc
QtLocation QtTest
など
[All Classes by Module](https://doc.qt.io/qt-5.10/modules-cpp.html) [All Classes](https://doc.qt.io/qt-5.10/classes.html)
PythonでもC++と同じモジュールが使用可能 PyPI(PythonのPackage管理マネージャー)でインストール可能 > pip install PySide2 サポートPythonバージョン > Python 2系 - 2.7(Windowsの場合はサポートしていない) > Python 3系 - 3.5以上 Qt for PythonのAPIについて > ほとんどのQt API用のPythonラッパーを提供。 > Qt C++ユーザーがPythonに移行しやすいように、Pythonはスネーク記法が 一般的だがQtのC++ APIキャメル記法のままにしている。
Qt for Python 5.12詳細 : [Qt for Python 5.12 Released](https://blog.qt.io/blog/2018/12/18/qt-python-5-12-released/)
QMLで、よりリッチなUIとマルチメディアをサポート
QtQml QtQuick
QtGraphicalEffects QtChart
QtMultimedia QtAudioEngine
QtLocation QtBluetooth
QtNfc QtPurchasing
Qt3D QtWebEngine
など [All QML Modules](https://doc.qt.io/qt-5/modules-qml.html)
QML(Qt Meta-Object Language)とは? > ビジュアルを重視したGUIやアニメーションフレームワーク、マルチメディア機能などを 提供し、ユーザーエクスペリエンスを向上させる事ができる表現豊かなQt同時の言語。 > CSSに似たシンタックスで、JSON風のシンタックス構文の言語 学習コストが低く、最近ではDesign toolで自動生成も可能となっている。
柔軟で分かりやすいTool群 Qt Creator - IDE
柔軟で分かりやすいTool群 Qt Design Studio
柔軟で分かりやすいTool群 Qt 3D Studio
最新のQtをつかってみよう
Qtのロードマップ
Qtリリース間隔 > 半年に1回のリリース。継続的な機能Up / バグ修正あり。
QtのLTS(Long Time Support)長期サポート版 > 3年のサポート。バグ/セキュリティ修正が行われる。 > Qt for Pythonはリリースされたばかりなので 1年間のサポートのみ。(LTSから除外) → 今使用するなら、リリースされたばかりの Qt5.12LTSがお勧め!
Qt Version Release Schedule Qt5.12.1 LTS 2019/2/1 (リリース済み) Qt5.13 2019/5 予定 Qt5,14 2019/ 11予定 Qt5.15 2020/5 予定
Installerのダウンロード(Open Source 版) > http://www.qt.io の右上 “Download Try. Buy” をクリック > Get Qt のページから Open Sourceの”Go open source” をクリック
Installerのダウンロード(Open Source 版) > Install Qt のページから Open Sourceの”Go open source” をクリック
Installerのダウンロード(Open Source 版) > 最新版のアーカイブ場所 http://download.qt.io /archive/online_installers/3.0/ からも直接ダウンロード可能
もっとQtで開発
Qt開発インフラ > Wiki http://wiki.qt.io > メーリングリスト http://lists.qt-project.org/mailman/listinfo
> bugトラッカー https://bugreports.qt.io/ > Code reviewシステム https://codereview.qt-project.org
Qt開発にかかわるガイドラインの詳細は、 [Category:Developing Qt::Guidelines](http://wiki.qt.io/Category:Developing_Qt::Guidelines) [コントリビューションしてみたよ! – Qiita @helicalgear](https://qiita.com/helicalgear/items/ba97890ac7b5ddf8d9ed)
日本Qtユーザー会 http://qt-users.jp/ > Qtを日本での普及をさせるために設立。 各地で活躍しているQtユーザーによって 作られたコミュニティーです。 > 実は本WebサイトもQtのQMLで描かれ てます。 > メーリングリストに参加してみてください。 http://qt-users.jp/mailman/listinfo/qt-users
日本Qtユーザー会の歴史 [Qtユーザー会のご紹介 – 緑之庵(緑之杜) @hermit4](http://blog.hermit4.info/2015/12/qt.html)
Qt勉強会 https://qt-users.connpass.com/ > IT勉強会支援Siteの connpass にて 募集を行っています。(無料) > 東京/名古屋で、毎月(第3土曜)に 開催しています。関西は不定期開催。 > ハッシュタグ #qtjp や、 で” Qt勉強会” と検索すると 勉強会の雰囲気がつかめます。
Qt Virtual Tech Summit 2019
https://www.qt.io/qtvirtualtechsummit2019 > 2019/2/13 0:00[日本時間] (2019/2/12 7:00 PST)の3日間開催 > Webinar参加。参加費無料 > tag: #QtVTS19
日本語の Qt 書籍いろいろあります
まとめ >Qtはアプリケーション開発フレームワーク
>>いろんな所に使われている
>オープンソースプロジェクトで活発に今も開発が進められている
>>たくさんのC++ / Pythonモジュールを提供
>>開発環境も含め、マルチプラットフォームで提供
>Qt熱い
>>日本でも勉強できる場と、気軽に学べるたくさんの日本語の
書籍が常に提供され続けている。
Any questions?
Thanks!
top related