qt の技術概要 · 2017-10-31 · qt development framework 3 s/ 42 前⾝の trolltech 社は...

Post on 14-Aug-2020

0 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

1 / 42

Qt の技術概要 ?MeeGo Seminar Spring 2010 2010/4/21 Wed.@東京コンファレンスセンター 品川

2 / 42⾃⼰紹介鈴⽊ 佑(Suzuki Tasuku)

Nokia, Qt Development FrameworksCunsulting Services Engineer

1979年⽣まれ北海道札幌市出⾝

1998年 プログラミングを始めるPerl, Visual Basic, SQL 等

2001年 Qt を使い始めるC++, Linux

2006年 旧 Trolltech ⼊社2008年 Nokia が Trolltech を買収現在は Nokia Japan 勤務

3 / 42

Qt Development Frameworks前⾝の Trolltech 社は 1994 年に設⽴2008 年 Nokia によって買収Qt の開発、サポート、販売、プロモーション活動など8 つの拠点で、約 250 ⼈が働いている2011 年に 2009 年の時点の Qt ディベロッパーの数を 10 倍にするのが⽬標!

4 / 42

Web サイト

5 / 42

AgendaQt とは?Qt の開発環境Qt を使ったアプリケーション開発のデモ

6 / 42読み⽅

Qtキュート cuteきゅーと

7 / 42

Qt とは?

8 / 42

C++ のクラスライブラリネイティブアプリの開発が可能わかりやすい APIUI 開発のみならずネットワークやデータベース、マルチメディアなど様々な機能に対応クラス数は 800 以上ドキュメントが⾮常に充実クロスプラットフォームでソースコードを使⽤可能

9 / 42ドキュメント

10 / 42動作環境Linux/X11Microsoft WindowsMac OS Xその他の Unix 系 OS

Embedded LinuxWindows CESymbianMaemoリアルタイム OS(QNX, VxWorks)

http://qt.nokia.com/doc/4.6/supported-platforms.html

11 / 42開発ツール統合開発環境 Qt CreatorクロスプラットフォームのビルドツールGUI の UI デザインツールドキュメントビューア国際化対応ツール

など

12 / 42オープンソースQt の開発はとてもオープンに⾏われていますソースリポジトリ http://qt.gitorious.org/ロードマップhttp://qt.nokia.com/resources-jp/qt-roadmapバグトラッカー http://bugreports.qt.nokia.com/メーリングリスト http://qt.nokia.com/listsIRC irc://irc.freenode.org:6667/qt-labs開発者ブログ http://labs.qt.nokia.com/

13 / 42

14 / 42

Qt の使⽤事例

15 / 42

KDE SC

16 / 42

Skype / Google Earth

17 / 42

Qt は様々な業種でつかわれていますhttp://qt.nokia.com/qt-in-use

18 / 42

Qt の機能

19 / 42

Qt のモジュール

QtSvgQtWebKitQtMultimediaQtXmlQtXmlPatternsPhononQt3Support

QtCoreQtGuiQtNetworkQtOpenGLQtScriptQtScriptToolsQtSql

Qt の各クラスはモジュール単位に分類され、モジュール毎に別々のライブラリとして提供される

QtDesigner

QtUiTools

QtHelp

QtAssistant

QtTest

QAxContainer

QAxServer

QtDBus

http://qt.nokia.com/doc/4.6/modules.html

20 / 42

QtCore - ⾮GUIの基本機能⽂字、⽂字列関連

QChar, QString, QRegExp, QTextCodec, ...

ファイル関連QFile, QDir, QDataStream, ...

コンテナ(リスト系、ハッシュマップ)QList, QMap, iterators, ...

マルチスレッドQThread, QMutex, QtConcurrent, ...

その他

http://qt.nokia.com/doc/4.6/qtcore.html

21 / 42

QtGui - GUIの基本機能⾊、フォント

QColor, QPalette, QGradient, QFont, QFontMetrics, ...

描画関連QPen, QBrush, QPainter, ...

GUI イベント情報QKeyEvent, QMouseEvent, QPaintEvent, QResizeEvent, ...

http://qt.nokia.com/doc/4.6/qtgui.html

22 / 42

QtGui - 基本的なウィジェットQWidget

QDialogQLabelQPushButtonQCheckBoxQRadioButtonQLineEditQTextEditQProgressBarQScrollBar

etc...

http://qt.nokia.com/doc/4.6/gallery-plastique.html

23 / 42

QtGui - コンテナウィジェットQWidget

QTabWidgetQGroupBoxQScrollAreaQToolBoxQMdiArea

http://qt.nokia.com/doc/4.6/qwidget.html#details

24 / 42

QtGui - モデルビューhttp://qt.nokia.com/doc/4.6/model-view-programming.html

QAbstractItemView

QListViewQTreeViewQTableView

QAbstractItemModel

QAbstractListModel

QAbstractItemDelegate

25 / 42

QtGui - レイアウトマネージャーhttp://qt.nokia.com/doc/4.6/layout.html

QLayoutQHBoxLayoutQVBoxLayoutQGridLayoutQFormLayoutQSpacerItem

etc...

26 / 42

QtGui - スタイルhttp://qt.nokia.com/doc/4.6/qstyle.html

QWindowsStyleQPlastiqueStyle

27 / 42

QtGui - スタイルシートhttp://qt.nokia.com/doc/4.6/stylesheet.html

123456789

1011121314151617181920

* {color: darkgreen;

}QPushButton, QComboBox, QLineEdit, QSpinBox {

border: 2px solid orange;border-radius: 6px;

}QPushButton {

background-color: white;padding-left: 10px;padding-right: 10px;

}

QPushButton:hover {color: red;border: 2px solid blue;

}QPushButton:pressed {

background-color: yellow;}

28 / 42

QtNetwork - ネットワーク機能ソケット関連

QTcpSocket, QUdpSocket, QSslSocket, QLocalSocket, ...

サーバー関連QTcpServer, QLocalServer

Http, FtpQNetworkRequest, QNetworkReply,QNetworkAccessManager, QNetworkProxy, ...

http://qt.nokia.com/doc/4.6/qtnetwork.html

29 / 42

QtSql - データベースデータベースアクセス関連

QSqlDatabase, QSqlQuery, QSqlRecord, QSqlResult, ...

データベースドライバ関連QSqlDriverPlugin, QSqlDriver, ...

標準でサポートしているデータベースMySqlOracleODBCPostgreSQLsqlite version 2 and 3 etc...

http://qt.nokia.com/doc/4.6/qtsql.html

30 / 42

QtWebKit - ブラウザエンジンhttp://qt.nokia.com/doc/4.6/qtwebkit.html

31 / 42

Phonon - マルチメディアビデオ、オーディオのプレイバック各プラットフォームでネイティブのバックエンドを使⽤

http://qt.nokia.com/doc/4.6/phonon-overview.html

32 / 42

Qt の開発環境Qt SDK のインストールQt Creator の紹介簡単なアプリケーションの開発のデモ

33 / 42

Qt SDK のインストール

34 / 42

Qt SDK とは?

= +Qt Creator統合開発環境

Qt ライブラリ(デスクトップ⽤)

Qt SDK

35 / 42

Qt Creator

36 / 42

Qt Creator とは?クロスプラットフォームで動作する Qt 専⽤ IDE

Linux, Windows, Mac 上で動作可能Qt を使⽤するソフトウェアの開発を効率よく⾏える

Qt のソースコードを書くために最適化されたエディタUI デザイナ、ドキュメントビューアを統合ビルド、実⾏、デバッグが可能シンプルかつ強⼒なファイルのナビゲーションソースコードバージョン管理システムとの連携軽快に動作

37 / 42

デモ

38 / 42

Qt の学び⽅

39 / 42

Document

40 / 42⼊⾨ Qt 4 プログラミング著者:Jasmin Blanchette翻訳:杵渕聡, 杉⽥研治出版社:O'Reilly Japan, 2007ISBN:487311344X9784873113449

41 / 42

Qt Labs Japan

42 / 42

Thank you !

詳細は qt.nokia.com で!

top related