SlideShare una empresa de Scribd logo
1 de 32
Descargar para leer sin conexión
It's Qt!
プログラミング生放送勉強会
第16回@名古屋
2012/05/19 You&I
2               2012/5/19




ダレ、イッタイ。
 H/N:   You&I(読み:ユーアンドアイ)
 出身:    生まれも育ちも名古屋市
 年齢:    30代中盤
 本職:    商学部出身の職業プログラマ
 言語:    C++, C#, VB6.0, 日本語COBOL
 日記:    http://d.hatena.ne.jp/youandi/
 所属:    プログラミング生放送 名古屋支部

                                       It's Qt!
3   2012/5/19




Agenda
1.   Qt(キュート)とは
2.   Qtの環境構築
3.   Qt/C++デモ
4.   Qt/QMLデモ
5.   Qtの今後
6.   まとめ



                         It's Qt!
4   2012/5/19




1. Qt(キュート)とは
1.   Qt(キュート)とは
2.   Qtの環境構築
3.   Qt/C++デモ
4.   Qt/QMLデモ
5.   Qtの今後
6.   まとめ



                         It's Qt!
5          2012/5/19




1. Qt(キュート)とは(1/10)
 アプリケーション・UI   開発フレームワーク
 特徴
 1.    C++ クラスライブラリ
 2.    クロスプラットフォーム対応
 3.    統合開発環境を持つ
 4.    商用・OSSのデュアルライセンス




                               It's Qt!
6             2012/5/19




1. Qt(キュート)とは(2/10)
 Qtの歴史(現在のメインバージョンはQt             4.8)
リリース    バージョン                備考

1996年   Qt 1.0   X11版及びWindows版
1999年   Qt 2.0   X11版がOSS化
2001年   Qt 3.0   MacOS X版
2005年   Qt 4.0   GPL 2.0(及びそれ以降)ライセンス追加
2007年   Qt 4.5   LGPL 2.1ライセンス追加
2010年   Qt 4.7   Qt/QMLが追加
2012年   Qt 5.0   現在α版。7月以降にリリース予定         It's Qt!
7             2012/5/19




1. Qt(キュート)とは(3/10)
 Qtの歴史   - その2
    1991年にノルウェーのQuasar Technologies
     社が開発を開始
    1994年にTrolltech社に社名変更
    2008年6月にフィンランドのNokia社が
     Trolltech社を買収
    2011年3月にフィンランドのDigia社がNokiaの
     Qtの商用ライセンス事業とサービス事業を買収
    2011年10月にQt ProjectとしてOSSプロジェク
     ト化。
                                     It's Qt!
8                            2012/5/19




1. Qt(キュート)とは(4/10)
 Qtの主な機能

                ユニットテスト


      Widgets(UI)             Qt Quick(UI)


  マルチメディア            WebKit              JavaScript


  ネットワーク            データベース                   XML


            スレッド               コンテナ
                                                         It's Qt!
9                  2012/5/19




1. Qt(キュート)とは(5/10)
 クロスプラットフォーム対応(公式サポート)

プラットフォーム                  対応OS


デスクトップ     Windows, Linux/X11, MacOS X


モバイル       Symbian, MeeGo

組み込み
           WindowsCE, 組み込みLinux
リアルタイムOS
                                            It's Qt!
10                     2012/5/19




1. Qt(キュート)とは(6/10)
 クロスプラットフォーム対応(公式外)

プラットフォーム                      対応OS


デスクトップ     FreeBSD, Solaris


モバイル       Android, iOS, Blackberry

組み込み
           T-Kernel, QNX, Integrity, vxWorks
リアルタイムOS
                                                  It's Qt!
11                 2012/5/19




1. Qt(キュート)とは(7/10)
 統合開発環境(1/3)
    Qtには「Qt Creator」という統合開発環境が
     提供されている。
      http://qt.nokia.com/products-jp/developer-
      tools/tools-flipper/cross-platform-ide/
    Qt Creator自身がQtを利用して開発されてい
     る。
    Qtを利用しているので、Qt Creatorもクロス
     プラットフォーム対応&多言語対応。

                                                    It's Qt!
12    2012/5/19




1. Qt(キュート)とは(8/10)
 統合開発環境(2/3)




                         It's Qt!
13      2012/5/19




1. Qt(キュート)とは(9/10)
 統合開発環境(3/3)
    Qt Creatorの特徴
      洗練されたコードエディタ
      バージョンコントロール
      UIデザイナの統合
      プロジェクト&ビルド管理
      デスクトップ&モバイルのターゲット
      Qt Simulator
    Qt Creator以外にも、各種統合開発環境向けの
     Qt Plug-inもあります
                                It's Qt!
14          2012/5/19




1. Qt(キュート)とは(10/10)
 デュアルライセンス
    商用ライセンス
      Digia社が管理。
      日本ではSRA、ISB、日新システムズの3社。

    OSSライセンス
      現行の最新版では以下のライセンスを選択可能。
         GPL 3
         LGPL 2.1
      商用版との併用や、商用版への乗換には制限あり。

                                    It's Qt!
15   2012/5/19




2. Qtの環境構築
1.   Qt(キュート)とは
2.   Qtの環境構築
3.   Qt/C++デモ
4.   Qt/QMLデモ
5.   Qtの今後
6.   まとめ



                          It's Qt!
16             2012/5/19




2. Qtの環境構築(1/4)
 Qtの環境構築を行う場合、Qtのライブラリ、
 Qt Creatorと個別にセットアップを行うより
 もQt SDKで一括でセットアップを行うと便利。
    http://qt.nokia.com/downloads-jp
 Qt
  SDKを利用する事で、インストールしたラ
 イブラリ、ツールの更新を行うアプリケー
 ションも提供されるので、メンテナンスも容
 易である。

                                           It's Qt!
17     2012/5/19




2. Qtの環境構築(2/4)




                     It's Qt!
18     2012/5/19




2. Qtの環境構築(3/4)




                     It's Qt!
19                    2012/5/19




2. Qtの環境構築(4/4)
 コンパイラについて
    Windowsならば、VisualC++及びMinGWが利
     用可能。
    Qt SDKからMinGWのインストールも可能。
    Qt Creatorはコードをモデルをclangに変更す
     る予定である。
      http://labs.qt.nokia.co.jp/2011/11/16/qt-
       creator-%E3%81%A8-clang.html
      これによりC++11対応が促進される

                                                      It's Qt!
20   2012/5/19




3. Qt/C++デモ
1.   Qt(キュート)とは
2.   Qtの環境構築
3.   Qt/C++デモ
4.   Qt/QMLデモ
5.   Qtの今後
6.   まとめ



                          It's Qt!
21            2012/5/19




3. Qt/C++デモ(1/3)
 C++で開発する時のQtの特徴
    QObjectを基底クラスとしたクラス構成
    QObjectはスマートポインタとなっており、メ
     モリリークする危険性が少ない
    SignalとSlotによる操作通知モデル
      ビルドでboost::signalコンフリクトする
      構文がちょっとキモイ




                                      It's Qt!
22    2012/5/19




3. Qt/C++デモ(2/3)




                      It's Qt!
23                  2012/5/19




3. Qt/C++デモ(3/3)
 QtでWebブラウザを作成してみましょう。
    Qt をはじめよう! 第6回: 簡単なブラウザを
     作ってみよう!
    http://labs.qt.nokia.co.jp/2010/04/13/simple
     browser-with-qtcreator.html




                                                 It's Qt!
24   2012/5/19




4. Qt/QMLデモ
1.   Qt(キュート)とは
2.   Qtの環境構築
3.   Qt/C++デモ
4.   Qt/QMLデモ
5.   Qtの今後
6.   まとめ



                          It's Qt!
25               2012/5/19




4. Qt/QMLデモ(1/3)
 デモをする前にQMLについて
 Qt/QMLとはQt      Meta-object Languageの
  略称
 Qt/QMLでの開発プラットフォームはQt
  Quickと呼称されている
    http://qt-
     project.org/wiki/Qt_Quick_Japanese


                                             It's Qt!
26               2012/5/19




4. Qt/QMLデモ(2/3)
 Qt   Quickとは以下の要素で構成されます
 1.       Qt/QML(Qt Meta-Object Language)
          JavaScript ベースの直感的なスクリプト言語
 2.       Qt Creator
          QMLの統合開発環境
 3.       Qt Declarative
          C++を使用してQMLアプリケーションを強化



                                               It's Qt!
27                2012/5/19




4. Qt/QMLデモ(3/3)
 Qt/QMLを使ってGoogle             Mapを表示するプ
 ログラムのデモ
    @IT > Qt Quickで地図をドラッグさせてみよう
    http://www.atmarkit.co.jp/fwcr/rensai2/qt0
     3/01.html




                                               It's Qt!
28   2012/5/19




5. Qtの今後
1.   Qt(キュート)とは
2.   Qtの環境構築
3.   Qt/C++デモ
4.   Qt/QMLデモ
5.   Qtの今後
6.   まとめ



                          It's Qt!
29    2012/5/19




5. Qtの今後(1/2)
 今年の夏頃にQt
         5.0がリリースされます。
 メジャーバージョンの更新
    Qt 4.0リリースから7年経過
    UIのトレンドの変化
    ハードウェアの進化
      CPU/GPUのMany
                Core化
      タッチパネルデバイスの普及

    Qt 4.0のAPI設計の限界&時代遅れ

                               It's Qt!
30            2012/5/19




5. Qtの今後(2/2)
 Qt5の特徴
    QMLがUIのメイン言語に
    OpenGLを積極的に活用した描画の高速化
      グラフィックアーキテクチャの刷新
      プラットフォームでのOpenGL       (ES)対応が必須条
       件に
      GLSL(OpenGL Shading Language)によるパー
       ティクルやエフェクトの高速描画
    V8 JavaScriptエンジン
    WebKit2
                                            It's Qt!
31   2012/5/19




6. まとめ
1.   Qt(キュート)とは
2.   Qtの環境構築
3.   Qt/C++デモ
4.   Qt/QMLデモ
5.   Qtの今後
6.   まとめ



                          It's Qt!
32       2012/5/19




6. まとめ
 QtはC++において活発に開発が行われている
  ライブラリ・フレームワークの内の1つです。
 QtはOSS化されて仕事でも利用し易くなって
  います。
 Qt SDKでお手軽に環境構築ができます。
 QtのUI周りのクロスプラットフォーム対応や
  多言語対応については、他のライブラリより
  も抜きん出ていると思います。

                         It's Qt!

Más contenido relacionado

La actualidad más candente

enterprise grails challenge, 2013 Summer
enterprise grails challenge, 2013 Summerenterprise grails challenge, 2013 Summer
enterprise grails challenge, 2013 SummerUehara Junji
 
G* Workshop in fukuoka 20120901
G* Workshop in fukuoka 20120901G* Workshop in fukuoka 20120901
G* Workshop in fukuoka 20120901Uehara Junji
 
Qt でIRCクライアント作ってみた
Qt でIRCクライアント作ってみたQt でIRCクライアント作ってみた
Qt でIRCクライアント作ってみたYikei Lu
 
GroovyServ concept, how to use and outline.
GroovyServ concept, how to use and outline.GroovyServ concept, how to use and outline.
GroovyServ concept, how to use and outline.Uehara Junji
 
Read Groovy Compile process(Groovy Benkyoukai 2013)
Read Groovy Compile process(Groovy Benkyoukai 2013)Read Groovy Compile process(Groovy Benkyoukai 2013)
Read Groovy Compile process(Groovy Benkyoukai 2013)Uehara Junji
 
Indy(Invokedynamic) and Bytecode DSL and Brainf*ck
Indy(Invokedynamic) and Bytecode DSL and Brainf*ckIndy(Invokedynamic) and Bytecode DSL and Brainf*ck
Indy(Invokedynamic) and Bytecode DSL and Brainf*ckUehara Junji
 
Groovy base gradle_20130309
Groovy base gradle_20130309Groovy base gradle_20130309
Groovy base gradle_20130309Nobuhiro Sue
 
groovy 2.1.0 20130118
groovy 2.1.0 20130118groovy 2.1.0 20130118
groovy 2.1.0 20130118Uehara Junji
 
Introduce Toaster (Toasterのご紹介)
Introduce Toaster (Toasterのご紹介)Introduce Toaster (Toasterのご紹介)
Introduce Toaster (Toasterのご紹介)Hiroshi Sakate
 
Google I/O 2021 Flutter 全体報告
Google I/O 2021 Flutter 全体報告Google I/O 2021 Flutter 全体報告
Google I/O 2021 Flutter 全体報告cch-robo
 
The History of Groovy #GroovyBase
The History of Groovy #GroovyBaseThe History of Groovy #GroovyBase
The History of Groovy #GroovyBasekyon mm
 
フラッター開発におけるシークレット情報取扱考察
フラッター開発におけるシークレット情報取扱考察フラッター開発におけるシークレット情報取扱考察
フラッター開発におけるシークレット情報取扱考察cch-robo
 
Gws 20130315 gradle_handson
Gws 20130315 gradle_handsonGws 20130315 gradle_handson
Gws 20130315 gradle_handsonNobuhiro Sue
 
Introduction to Yocto Project - Let's make customized embedded linux
Introduction to Yocto Project - Let's make customized embedded linuxIntroduction to Yocto Project - Let's make customized embedded linux
Introduction to Yocto Project - Let's make customized embedded linuxHiroshi Sakate
 
Open binder
Open binderOpen binder
Open binderl_b__
 

La actualidad más candente (16)

enterprise grails challenge, 2013 Summer
enterprise grails challenge, 2013 Summerenterprise grails challenge, 2013 Summer
enterprise grails challenge, 2013 Summer
 
G* Workshop in fukuoka 20120901
G* Workshop in fukuoka 20120901G* Workshop in fukuoka 20120901
G* Workshop in fukuoka 20120901
 
Qt でIRCクライアント作ってみた
Qt でIRCクライアント作ってみたQt でIRCクライアント作ってみた
Qt でIRCクライアント作ってみた
 
GroovyServ concept, how to use and outline.
GroovyServ concept, how to use and outline.GroovyServ concept, how to use and outline.
GroovyServ concept, how to use and outline.
 
Read Groovy Compile process(Groovy Benkyoukai 2013)
Read Groovy Compile process(Groovy Benkyoukai 2013)Read Groovy Compile process(Groovy Benkyoukai 2013)
Read Groovy Compile process(Groovy Benkyoukai 2013)
 
Indy(Invokedynamic) and Bytecode DSL and Brainf*ck
Indy(Invokedynamic) and Bytecode DSL and Brainf*ckIndy(Invokedynamic) and Bytecode DSL and Brainf*ck
Indy(Invokedynamic) and Bytecode DSL and Brainf*ck
 
Groovy base gradle_20130309
Groovy base gradle_20130309Groovy base gradle_20130309
Groovy base gradle_20130309
 
groovy 2.1.0 20130118
groovy 2.1.0 20130118groovy 2.1.0 20130118
groovy 2.1.0 20130118
 
Introduce Toaster (Toasterのご紹介)
Introduce Toaster (Toasterのご紹介)Introduce Toaster (Toasterのご紹介)
Introduce Toaster (Toasterのご紹介)
 
Google I/O 2021 Flutter 全体報告
Google I/O 2021 Flutter 全体報告Google I/O 2021 Flutter 全体報告
Google I/O 2021 Flutter 全体報告
 
The History of Groovy #GroovyBase
The History of Groovy #GroovyBaseThe History of Groovy #GroovyBase
The History of Groovy #GroovyBase
 
フラッター開発におけるシークレット情報取扱考察
フラッター開発におけるシークレット情報取扱考察フラッター開発におけるシークレット情報取扱考察
フラッター開発におけるシークレット情報取扱考察
 
Gws 20130315 gradle_handson
Gws 20130315 gradle_handsonGws 20130315 gradle_handson
Gws 20130315 gradle_handson
 
Groovyの紹介20130323
Groovyの紹介20130323Groovyの紹介20130323
Groovyの紹介20130323
 
Introduction to Yocto Project - Let's make customized embedded linux
Introduction to Yocto Project - Let's make customized embedded linuxIntroduction to Yocto Project - Let's make customized embedded linux
Introduction to Yocto Project - Let's make customized embedded linux
 
Open binder
Open binderOpen binder
Open binder
 

Destacado

eXtremeProgramming入門
eXtremeProgramming入門eXtremeProgramming入門
eXtremeProgramming入門You&I
 
LT司会資料(わんくま同盟名古屋勉強会#20)
LT司会資料(わんくま同盟名古屋勉強会#20)LT司会資料(わんくま同盟名古屋勉強会#20)
LT司会資料(わんくま同盟名古屋勉強会#20)You&I
 
納涼!みんなで持ち寄る『ゾッ!とする話』
納涼!みんなで持ち寄る『ゾッ!とする話』納涼!みんなで持ち寄る『ゾッ!とする話』
納涼!みんなで持ち寄る『ゾッ!とする話』You&I
 
LT司会資料(わんくま同盟名古屋勉強会#15)
LT司会資料(わんくま同盟名古屋勉強会#15)LT司会資料(わんくま同盟名古屋勉強会#15)
LT司会資料(わんくま同盟名古屋勉強会#15)You&I
 
バージョン管理システムのパネルディスカッション
バージョン管理システムのパネルディスカッションバージョン管理システムのパネルディスカッション
バージョン管理システムのパネルディスカッションYou&I
 
Scrum体験スパルタワークショップ
Scrum体験スパルタワークショップScrum体験スパルタワークショップ
Scrum体験スパルタワークショップYou&I
 
Windows 8やWindows Phone 8についてのパネルディスカッション
Windows 8やWindows Phone 8についてのパネルディスカッションWindows 8やWindows Phone 8についてのパネルディスカッション
Windows 8やWindows Phone 8についてのパネルディスカッションYou&I
 
ペアプログラミング?
ペアプログラミング?ペアプログラミング?
ペアプログラミング?You&I
 
マシュマロ・チャレンジ
マシュマロ・チャレンジマシュマロ・チャレンジ
マシュマロ・チャレンジYou&I
 
大野耐一著トヨタ生産方式を読んで
大野耐一著トヨタ生産方式を読んで大野耐一著トヨタ生産方式を読んで
大野耐一著トヨタ生産方式を読んでYou&I
 
C++ REST SDKを使ってWebサービスを利用する
C++ REST SDKを使ってWebサービスを利用するC++ REST SDKを使ってWebサービスを利用する
C++ REST SDKを使ってWebサービスを利用するYou&I
 
Scrumワークショップ
ScrumワークショップScrumワークショップ
ScrumワークショップYou&I
 
アジャイルにプロジェクトの"なぜ"を考える、インセプションデッキワークショップ
アジャイルにプロジェクトの"なぜ"を考える、インセプションデッキワークショップアジャイルにプロジェクトの"なぜ"を考える、インセプションデッキワークショップ
アジャイルにプロジェクトの"なぜ"を考える、インセプションデッキワークショップYou&I
 
MapReduce 初心者が Hadoop をさわってみた。もちろん C++ から。
MapReduce 初心者が Hadoop をさわってみた。もちろん C++ から。MapReduce 初心者が Hadoop をさわってみた。もちろん C++ から。
MapReduce 初心者が Hadoop をさわってみた。もちろん C++ から。You&I
 
マシュマロ・チャレンジで チームビルディング体験
マシュマロ・チャレンジで チームビルディング体験マシュマロ・チャレンジで チームビルディング体験
マシュマロ・チャレンジで チームビルディング体験You&I
 

Destacado (17)

eXtremeProgramming入門
eXtremeProgramming入門eXtremeProgramming入門
eXtremeProgramming入門
 
Scrum"再"入門
Scrum"再"入門Scrum"再"入門
Scrum"再"入門
 
LT司会資料(わんくま同盟名古屋勉強会#20)
LT司会資料(わんくま同盟名古屋勉強会#20)LT司会資料(わんくま同盟名古屋勉強会#20)
LT司会資料(わんくま同盟名古屋勉強会#20)
 
納涼!みんなで持ち寄る『ゾッ!とする話』
納涼!みんなで持ち寄る『ゾッ!とする話』納涼!みんなで持ち寄る『ゾッ!とする話』
納涼!みんなで持ち寄る『ゾッ!とする話』
 
LT司会資料(わんくま同盟名古屋勉強会#15)
LT司会資料(わんくま同盟名古屋勉強会#15)LT司会資料(わんくま同盟名古屋勉強会#15)
LT司会資料(わんくま同盟名古屋勉強会#15)
 
バージョン管理システムのパネルディスカッション
バージョン管理システムのパネルディスカッションバージョン管理システムのパネルディスカッション
バージョン管理システムのパネルディスカッション
 
Mercurial入門(後半)
Mercurial入門(後半)Mercurial入門(後半)
Mercurial入門(後半)
 
Scrum体験スパルタワークショップ
Scrum体験スパルタワークショップScrum体験スパルタワークショップ
Scrum体験スパルタワークショップ
 
Windows 8やWindows Phone 8についてのパネルディスカッション
Windows 8やWindows Phone 8についてのパネルディスカッションWindows 8やWindows Phone 8についてのパネルディスカッション
Windows 8やWindows Phone 8についてのパネルディスカッション
 
ペアプログラミング?
ペアプログラミング?ペアプログラミング?
ペアプログラミング?
 
マシュマロ・チャレンジ
マシュマロ・チャレンジマシュマロ・チャレンジ
マシュマロ・チャレンジ
 
大野耐一著トヨタ生産方式を読んで
大野耐一著トヨタ生産方式を読んで大野耐一著トヨタ生産方式を読んで
大野耐一著トヨタ生産方式を読んで
 
C++ REST SDKを使ってWebサービスを利用する
C++ REST SDKを使ってWebサービスを利用するC++ REST SDKを使ってWebサービスを利用する
C++ REST SDKを使ってWebサービスを利用する
 
Scrumワークショップ
ScrumワークショップScrumワークショップ
Scrumワークショップ
 
アジャイルにプロジェクトの"なぜ"を考える、インセプションデッキワークショップ
アジャイルにプロジェクトの"なぜ"を考える、インセプションデッキワークショップアジャイルにプロジェクトの"なぜ"を考える、インセプションデッキワークショップ
アジャイルにプロジェクトの"なぜ"を考える、インセプションデッキワークショップ
 
MapReduce 初心者が Hadoop をさわってみた。もちろん C++ から。
MapReduce 初心者が Hadoop をさわってみた。もちろん C++ から。MapReduce 初心者が Hadoop をさわってみた。もちろん C++ から。
MapReduce 初心者が Hadoop をさわってみた。もちろん C++ から。
 
マシュマロ・チャレンジで チームビルディング体験
マシュマロ・チャレンジで チームビルディング体験マシュマロ・チャレンジで チームビルディング体験
マシュマロ・チャレンジで チームビルディング体験
 

Similar a it's Qt!

2015 1025 OSC-Fall Tokyo NETMF
2015 1025 OSC-Fall Tokyo NETMF2015 1025 OSC-Fall Tokyo NETMF
2015 1025 OSC-Fall Tokyo NETMFAtomu Hidaka
 
2015 0227 OSC-Spring Tokyo NETMF
2015 0227 OSC-Spring Tokyo NETMF2015 0227 OSC-Spring Tokyo NETMF
2015 0227 OSC-Spring Tokyo NETMFAtomu Hidaka
 
NGK2018B マルチプラットフォームQtと日本Qtユーザー会の紹介
NGK2018B マルチプラットフォームQtと日本Qtユーザー会の紹介NGK2018B マルチプラットフォームQtと日本Qtユーザー会の紹介
NGK2018B マルチプラットフォームQtと日本Qtユーザー会の紹介Kazuo Asano (@kazuo_asa)
 
DEV-002_.NET Core/ASP.NET Core が実現するクロスプラットフォーム .NET の今と未来
DEV-002_.NET Core/ASP.NET Core が実現するクロスプラットフォーム .NET の今と未来DEV-002_.NET Core/ASP.NET Core が実現するクロスプラットフォーム .NET の今と未来
DEV-002_.NET Core/ASP.NET Core が実現するクロスプラットフォーム .NET の今と未来decode2016
 
OSC Tokushima 2013
OSC Tokushima 2013OSC Tokushima 2013
OSC Tokushima 2013Yuya Adachi
 
2014 1018 OSC-Fall Tokyo NETMF
2014 1018 OSC-Fall Tokyo NETMF2014 1018 OSC-Fall Tokyo NETMF
2014 1018 OSC-Fall Tokyo NETMFAtomu Hidaka
 
解説 Windows 10 May 2020 Update
解説 Windows 10 May 2020 Update解説 Windows 10 May 2020 Update
解説 Windows 10 May 2020 UpdateTomokazu Kizawa
 
PyQtではじめるGUIプログラミング
PyQtではじめるGUIプログラミングPyQtではじめるGUIプログラミング
PyQtではじめるGUIプログラミングRansui Iso
 
Nedo講座・rtmセミナー
Nedo講座・rtmセミナーNedo講座・rtmセミナー
Nedo講座・rtmセミナーopenrtm
 
Robotech2012講習会v01最終版v2
Robotech2012講習会v01最終版v2Robotech2012講習会v01最終版v2
Robotech2012講習会v01最終版v2Yuki Suga
 
ET2016 Smart Japan Alliance Llilum 161118
ET2016 Smart Japan Alliance Llilum 161118ET2016 Smart Japan Alliance Llilum 161118
ET2016 Smart Japan Alliance Llilum 161118Atomu Hidaka
 
PostgreSQL開発コミュニティに参加しよう! ~2022年版~(Open Source Conference 2022 Online/Kyoto 発...
PostgreSQL開発コミュニティに参加しよう! ~2022年版~(Open Source Conference 2022 Online/Kyoto 発...PostgreSQL開発コミュニティに参加しよう! ~2022年版~(Open Source Conference 2022 Online/Kyoto 発...
PostgreSQL開発コミュニティに参加しよう! ~2022年版~(Open Source Conference 2022 Online/Kyoto 発...NTT DATA Technology & Innovation
 
2014 0228 OSC-Spring Tokyo NETMF
2014 0228 OSC-Spring Tokyo NETMF2014 0228 OSC-Spring Tokyo NETMF
2014 0228 OSC-Spring Tokyo NETMFAtomu Hidaka
 
新しい Visual Studio & .NET と新時代のアーキテクチャ
新しい Visual Studio & .NET と新時代のアーキテクチャ新しい Visual Studio & .NET と新時代のアーキテクチャ
新しい Visual Studio & .NET と新時代のアーキテクチャ慎一 古賀
 
How to create a multi platform aware qt project
How to create a multi platform aware qt projectHow to create a multi platform aware qt project
How to create a multi platform aware qt projectTakahide Kondoh
 
.NET Core時代のCI/CD
.NET Core時代のCI/CD.NET Core時代のCI/CD
.NET Core時代のCI/CDYuta Matsumura
 
2013 06-22osc nagoya-netmf
2013 06-22osc nagoya-netmf2013 06-22osc nagoya-netmf
2013 06-22osc nagoya-netmfAtomu Hidaka
 
マイクロサービス開発が捗る Project Tye
マイクロサービス開発が捗る Project Tyeマイクロサービス開発が捗る Project Tye
マイクロサービス開発が捗る Project TyeYuta Matsumura
 
Getting Started .NET Core
Getting Started .NET CoreGetting Started .NET Core
Getting Started .NET CoreYuta Matsumura
 
RTM on Androidの紹介
RTM on Androidの紹介RTM on Androidの紹介
RTM on Androidの紹介openrtm
 

Similar a it's Qt! (20)

2015 1025 OSC-Fall Tokyo NETMF
2015 1025 OSC-Fall Tokyo NETMF2015 1025 OSC-Fall Tokyo NETMF
2015 1025 OSC-Fall Tokyo NETMF
 
2015 0227 OSC-Spring Tokyo NETMF
2015 0227 OSC-Spring Tokyo NETMF2015 0227 OSC-Spring Tokyo NETMF
2015 0227 OSC-Spring Tokyo NETMF
 
NGK2018B マルチプラットフォームQtと日本Qtユーザー会の紹介
NGK2018B マルチプラットフォームQtと日本Qtユーザー会の紹介NGK2018B マルチプラットフォームQtと日本Qtユーザー会の紹介
NGK2018B マルチプラットフォームQtと日本Qtユーザー会の紹介
 
DEV-002_.NET Core/ASP.NET Core が実現するクロスプラットフォーム .NET の今と未来
DEV-002_.NET Core/ASP.NET Core が実現するクロスプラットフォーム .NET の今と未来DEV-002_.NET Core/ASP.NET Core が実現するクロスプラットフォーム .NET の今と未来
DEV-002_.NET Core/ASP.NET Core が実現するクロスプラットフォーム .NET の今と未来
 
OSC Tokushima 2013
OSC Tokushima 2013OSC Tokushima 2013
OSC Tokushima 2013
 
2014 1018 OSC-Fall Tokyo NETMF
2014 1018 OSC-Fall Tokyo NETMF2014 1018 OSC-Fall Tokyo NETMF
2014 1018 OSC-Fall Tokyo NETMF
 
解説 Windows 10 May 2020 Update
解説 Windows 10 May 2020 Update解説 Windows 10 May 2020 Update
解説 Windows 10 May 2020 Update
 
PyQtではじめるGUIプログラミング
PyQtではじめるGUIプログラミングPyQtではじめるGUIプログラミング
PyQtではじめるGUIプログラミング
 
Nedo講座・rtmセミナー
Nedo講座・rtmセミナーNedo講座・rtmセミナー
Nedo講座・rtmセミナー
 
Robotech2012講習会v01最終版v2
Robotech2012講習会v01最終版v2Robotech2012講習会v01最終版v2
Robotech2012講習会v01最終版v2
 
ET2016 Smart Japan Alliance Llilum 161118
ET2016 Smart Japan Alliance Llilum 161118ET2016 Smart Japan Alliance Llilum 161118
ET2016 Smart Japan Alliance Llilum 161118
 
PostgreSQL開発コミュニティに参加しよう! ~2022年版~(Open Source Conference 2022 Online/Kyoto 発...
PostgreSQL開発コミュニティに参加しよう! ~2022年版~(Open Source Conference 2022 Online/Kyoto 発...PostgreSQL開発コミュニティに参加しよう! ~2022年版~(Open Source Conference 2022 Online/Kyoto 発...
PostgreSQL開発コミュニティに参加しよう! ~2022年版~(Open Source Conference 2022 Online/Kyoto 発...
 
2014 0228 OSC-Spring Tokyo NETMF
2014 0228 OSC-Spring Tokyo NETMF2014 0228 OSC-Spring Tokyo NETMF
2014 0228 OSC-Spring Tokyo NETMF
 
新しい Visual Studio & .NET と新時代のアーキテクチャ
新しい Visual Studio & .NET と新時代のアーキテクチャ新しい Visual Studio & .NET と新時代のアーキテクチャ
新しい Visual Studio & .NET と新時代のアーキテクチャ
 
How to create a multi platform aware qt project
How to create a multi platform aware qt projectHow to create a multi platform aware qt project
How to create a multi platform aware qt project
 
.NET Core時代のCI/CD
.NET Core時代のCI/CD.NET Core時代のCI/CD
.NET Core時代のCI/CD
 
2013 06-22osc nagoya-netmf
2013 06-22osc nagoya-netmf2013 06-22osc nagoya-netmf
2013 06-22osc nagoya-netmf
 
マイクロサービス開発が捗る Project Tye
マイクロサービス開発が捗る Project Tyeマイクロサービス開発が捗る Project Tye
マイクロサービス開発が捗る Project Tye
 
Getting Started .NET Core
Getting Started .NET CoreGetting Started .NET Core
Getting Started .NET Core
 
RTM on Androidの紹介
RTM on Androidの紹介RTM on Androidの紹介
RTM on Androidの紹介
 

Último

NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NTT DATA Technology & Innovation
 
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfクラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfFumieNakayama
 
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)UEHARA, Tetsutaro
 
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfAWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfFumieNakayama
 
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?akihisamiyanaga1
 
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineerYuki Kikuchi
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)Hiroshi Tomioka
 
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...博三 太田
 

Último (8)

NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
 
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfクラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
 
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
 
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfAWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
 
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
 
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
 
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
 

it's Qt!

  • 2. 2 2012/5/19 ダレ、イッタイ。  H/N: You&I(読み:ユーアンドアイ)  出身: 生まれも育ちも名古屋市  年齢: 30代中盤  本職: 商学部出身の職業プログラマ  言語: C++, C#, VB6.0, 日本語COBOL  日記: http://d.hatena.ne.jp/youandi/  所属: プログラミング生放送 名古屋支部 It's Qt!
  • 3. 3 2012/5/19 Agenda 1. Qt(キュート)とは 2. Qtの環境構築 3. Qt/C++デモ 4. Qt/QMLデモ 5. Qtの今後 6. まとめ It's Qt!
  • 4. 4 2012/5/19 1. Qt(キュート)とは 1. Qt(キュート)とは 2. Qtの環境構築 3. Qt/C++デモ 4. Qt/QMLデモ 5. Qtの今後 6. まとめ It's Qt!
  • 5. 5 2012/5/19 1. Qt(キュート)とは(1/10)  アプリケーション・UI 開発フレームワーク  特徴 1. C++ クラスライブラリ 2. クロスプラットフォーム対応 3. 統合開発環境を持つ 4. 商用・OSSのデュアルライセンス It's Qt!
  • 6. 6 2012/5/19 1. Qt(キュート)とは(2/10)  Qtの歴史(現在のメインバージョンはQt 4.8) リリース バージョン 備考 1996年 Qt 1.0 X11版及びWindows版 1999年 Qt 2.0 X11版がOSS化 2001年 Qt 3.0 MacOS X版 2005年 Qt 4.0 GPL 2.0(及びそれ以降)ライセンス追加 2007年 Qt 4.5 LGPL 2.1ライセンス追加 2010年 Qt 4.7 Qt/QMLが追加 2012年 Qt 5.0 現在α版。7月以降にリリース予定 It's Qt!
  • 7. 7 2012/5/19 1. Qt(キュート)とは(3/10)  Qtの歴史 - その2  1991年にノルウェーのQuasar Technologies 社が開発を開始  1994年にTrolltech社に社名変更  2008年6月にフィンランドのNokia社が Trolltech社を買収  2011年3月にフィンランドのDigia社がNokiaの Qtの商用ライセンス事業とサービス事業を買収  2011年10月にQt ProjectとしてOSSプロジェク ト化。 It's Qt!
  • 8. 8 2012/5/19 1. Qt(キュート)とは(4/10)  Qtの主な機能 ユニットテスト Widgets(UI) Qt Quick(UI) マルチメディア WebKit JavaScript ネットワーク データベース XML スレッド コンテナ It's Qt!
  • 9. 9 2012/5/19 1. Qt(キュート)とは(5/10)  クロスプラットフォーム対応(公式サポート) プラットフォーム 対応OS デスクトップ Windows, Linux/X11, MacOS X モバイル Symbian, MeeGo 組み込み WindowsCE, 組み込みLinux リアルタイムOS It's Qt!
  • 10. 10 2012/5/19 1. Qt(キュート)とは(6/10)  クロスプラットフォーム対応(公式外) プラットフォーム 対応OS デスクトップ FreeBSD, Solaris モバイル Android, iOS, Blackberry 組み込み T-Kernel, QNX, Integrity, vxWorks リアルタイムOS It's Qt!
  • 11. 11 2012/5/19 1. Qt(キュート)とは(7/10)  統合開発環境(1/3)  Qtには「Qt Creator」という統合開発環境が 提供されている。  http://qt.nokia.com/products-jp/developer- tools/tools-flipper/cross-platform-ide/  Qt Creator自身がQtを利用して開発されてい る。  Qtを利用しているので、Qt Creatorもクロス プラットフォーム対応&多言語対応。 It's Qt!
  • 12. 12 2012/5/19 1. Qt(キュート)とは(8/10)  統合開発環境(2/3) It's Qt!
  • 13. 13 2012/5/19 1. Qt(キュート)とは(9/10)  統合開発環境(3/3)  Qt Creatorの特徴  洗練されたコードエディタ  バージョンコントロール  UIデザイナの統合  プロジェクト&ビルド管理  デスクトップ&モバイルのターゲット  Qt Simulator  Qt Creator以外にも、各種統合開発環境向けの Qt Plug-inもあります It's Qt!
  • 14. 14 2012/5/19 1. Qt(キュート)とは(10/10)  デュアルライセンス  商用ライセンス  Digia社が管理。  日本ではSRA、ISB、日新システムズの3社。  OSSライセンス  現行の最新版では以下のライセンスを選択可能。  GPL 3  LGPL 2.1  商用版との併用や、商用版への乗換には制限あり。 It's Qt!
  • 15. 15 2012/5/19 2. Qtの環境構築 1. Qt(キュート)とは 2. Qtの環境構築 3. Qt/C++デモ 4. Qt/QMLデモ 5. Qtの今後 6. まとめ It's Qt!
  • 16. 16 2012/5/19 2. Qtの環境構築(1/4)  Qtの環境構築を行う場合、Qtのライブラリ、 Qt Creatorと個別にセットアップを行うより もQt SDKで一括でセットアップを行うと便利。  http://qt.nokia.com/downloads-jp  Qt SDKを利用する事で、インストールしたラ イブラリ、ツールの更新を行うアプリケー ションも提供されるので、メンテナンスも容 易である。 It's Qt!
  • 17. 17 2012/5/19 2. Qtの環境構築(2/4) It's Qt!
  • 18. 18 2012/5/19 2. Qtの環境構築(3/4) It's Qt!
  • 19. 19 2012/5/19 2. Qtの環境構築(4/4)  コンパイラについて  Windowsならば、VisualC++及びMinGWが利 用可能。  Qt SDKからMinGWのインストールも可能。  Qt Creatorはコードをモデルをclangに変更す る予定である。  http://labs.qt.nokia.co.jp/2011/11/16/qt- creator-%E3%81%A8-clang.html  これによりC++11対応が促進される It's Qt!
  • 20. 20 2012/5/19 3. Qt/C++デモ 1. Qt(キュート)とは 2. Qtの環境構築 3. Qt/C++デモ 4. Qt/QMLデモ 5. Qtの今後 6. まとめ It's Qt!
  • 21. 21 2012/5/19 3. Qt/C++デモ(1/3)  C++で開発する時のQtの特徴  QObjectを基底クラスとしたクラス構成  QObjectはスマートポインタとなっており、メ モリリークする危険性が少ない  SignalとSlotによる操作通知モデル  ビルドでboost::signalコンフリクトする  構文がちょっとキモイ It's Qt!
  • 22. 22 2012/5/19 3. Qt/C++デモ(2/3) It's Qt!
  • 23. 23 2012/5/19 3. Qt/C++デモ(3/3)  QtでWebブラウザを作成してみましょう。  Qt をはじめよう! 第6回: 簡単なブラウザを 作ってみよう!  http://labs.qt.nokia.co.jp/2010/04/13/simple browser-with-qtcreator.html It's Qt!
  • 24. 24 2012/5/19 4. Qt/QMLデモ 1. Qt(キュート)とは 2. Qtの環境構築 3. Qt/C++デモ 4. Qt/QMLデモ 5. Qtの今後 6. まとめ It's Qt!
  • 25. 25 2012/5/19 4. Qt/QMLデモ(1/3)  デモをする前にQMLについて  Qt/QMLとはQt Meta-object Languageの 略称  Qt/QMLでの開発プラットフォームはQt Quickと呼称されている  http://qt- project.org/wiki/Qt_Quick_Japanese It's Qt!
  • 26. 26 2012/5/19 4. Qt/QMLデモ(2/3)  Qt Quickとは以下の要素で構成されます 1. Qt/QML(Qt Meta-Object Language)  JavaScript ベースの直感的なスクリプト言語 2. Qt Creator  QMLの統合開発環境 3. Qt Declarative  C++を使用してQMLアプリケーションを強化 It's Qt!
  • 27. 27 2012/5/19 4. Qt/QMLデモ(3/3)  Qt/QMLを使ってGoogle Mapを表示するプ ログラムのデモ  @IT > Qt Quickで地図をドラッグさせてみよう  http://www.atmarkit.co.jp/fwcr/rensai2/qt0 3/01.html It's Qt!
  • 28. 28 2012/5/19 5. Qtの今後 1. Qt(キュート)とは 2. Qtの環境構築 3. Qt/C++デモ 4. Qt/QMLデモ 5. Qtの今後 6. まとめ It's Qt!
  • 29. 29 2012/5/19 5. Qtの今後(1/2)  今年の夏頃にQt 5.0がリリースされます。  メジャーバージョンの更新  Qt 4.0リリースから7年経過  UIのトレンドの変化  ハードウェアの進化  CPU/GPUのMany Core化  タッチパネルデバイスの普及  Qt 4.0のAPI設計の限界&時代遅れ It's Qt!
  • 30. 30 2012/5/19 5. Qtの今後(2/2)  Qt5の特徴  QMLがUIのメイン言語に  OpenGLを積極的に活用した描画の高速化  グラフィックアーキテクチャの刷新  プラットフォームでのOpenGL (ES)対応が必須条 件に  GLSL(OpenGL Shading Language)によるパー ティクルやエフェクトの高速描画  V8 JavaScriptエンジン  WebKit2 It's Qt!
  • 31. 31 2012/5/19 6. まとめ 1. Qt(キュート)とは 2. Qtの環境構築 3. Qt/C++デモ 4. Qt/QMLデモ 5. Qtの今後 6. まとめ It's Qt!
  • 32. 32 2012/5/19 6. まとめ  QtはC++において活発に開発が行われている ライブラリ・フレームワークの内の1つです。  QtはOSS化されて仕事でも利用し易くなって います。  Qt SDKでお手軽に環境構築ができます。  QtのUI周りのクロスプラットフォーム対応や 多言語対応については、他のライブラリより も抜きん出ていると思います。 It's Qt!