![[입문] Qt 6 프로그래밍 2편강의 썸네일](https://cdn.inflearn.com/public/courses/326823/cover/9c839f33-d59f-422a-9704-64534673a39c/커버이미지_Qt 6 프로그래밍_2편.png?w=420)
[입문] Qt 6 프로그래밍 2편
김대진
이번 강의는 Qt 프로그래밍 1편에 이어서 2편 강의 입니다. Qt를 처음 접하시는 분들은 1편을 먼저 학습하시고 2편을 학습하는 것을 권장합니다.
입문
Qt, GUI
Qtは、GUIだけでなく、ネットワーク、データベース、マルチメディア、IPCなど、さまざまな機能を提供することで、Pythonで簡単かつ迅速にさまざまな分野のアプリケーションを開発できる強力なフレームワークです。このレッスンでは、Qtの基礎からさまざまな例でPythonでQtを効果的に活用する方法を学びます。


Qtの膨大なAPIを活用して、Pythonでさまざまな分野のアプリケーションを開発する方法を深く学ぶことができます。
Qtを使用すると、Pythonでさまざまな分野のアプリケーションを迅速かつ効率的に開発する技術を習得できます。
Qtを使用してPythonでGUIを実装する方法を学ぶことができます。
このレッスンは、QtとPythonを活用してさまざまなGUIアプリケーションを開発できるように体系的に構成されており、実務に不可欠なさまざまな技術を学ぶことができます。
基本的なGUIの構築:基本的なQt開発環境設定から始めて、簡単なGUIアプリケーションを直接実装する方法を学びます。
コア機能の活用:SignalとSlotによるイベント処理、さまざまなリソース管理と多言語サポート、データベース連携、ネットワーク通信など、実務に必要なコア機能を扱います。
高度な技術習得:QPainterを活用した2Dグラフィックス、クロマキー映像処理、Custom Widget制作など、高度なアプリケーション開発に必要な技術を学習できます。
Qtを用いたGUI開発 (1)
Qt(PySide6)を利用すると、PythonでスタイリッシュなGUIを簡単に実装できます。
膨大なAPI(2)
ネットワーク、マルチメディア、IPC、データベースなど、さまざまな分野にわたる膨大なAPIにより、高度なアプリケーションを簡単に実装できます。
様々なツールをサポート(3)
Qtの強力なGUI、多言語サポート、リソース管理ツールを活用することで、簡単にレベルの高いアプリケーションを実装できます。
デスクトップアプリケーション:データ可視化ツール、ビジネスソフトウェアなどで活用できるGUIアプリケーション開発が可能です。
産業用ソフトウェア:ネットワークやデータベースとの連携機能により、IoT管理システム、生産管理ツール、通信アプリケーションなどに応用できます。
クロスプラットフォームアプリケーション:Qtのクロスプラットフォームサポートにより、Windows、macOS、Linuxなど、さまざまな環境で動作するインストールディストリビューションを作成できます。
実務中心の実習構成(1)
理論と実践をバランスよく配置し、学習者が直接コーディングしながらQtとPythonの機能を自然に習得できるように設計されています。各セクションでは、実務でよく使用される例とアプリケーションについて説明し、学習後に実際のプロジェクトに直接適用できます。
包括的なQt機能学習(2)
基本的なGUI開発から高度な機能であるCustom Widget、ネットワーク、多言語サポート、データベース連動、クロマキー映像処理など幅広いQtの機能を深く学ぶことができ、さまざまな分野に応用可能な技術を身につけることができます。
様々な用途に適したカリキュラム(3)
デスクトップアプリケーション、IoT、産業用ソフトウェア、クロスプラットフォーム展開までのカリキュラムを提供することで、Qtに初めての初心者だけでなく、高度な開発者まで、自分が望む分野に合わせて学習することができます。
モジュール化された学習アプローチ(4)
各機能別にセクションが区切られており、必要な部分を選択的に学習できます。 SignalとSlot、Qt Designer、リソースシステム、データ入出力などの主要機能を個別に探索し、必要に応じてすぐに活用できます。
実戦開発と同様の環境構築(5)
Visual Studio CodeとQt開発環境の設定から始めて、ディストリビューションの作成まで、実際の開発現場と同様の環境で学習することができます。
セクション1.講義を始める
本講義に先立ち、全体の学習過程を概説するセクションです。このセクションでは、講師の紹介に加えて、各セクションで学習する主な内容をまとめて提供するので、講義の全体的な流れを把握できます。
セクション2.講義資料
このセクションでは、セクション3から本格的に始まるレッスンで使用されているすべてのサンプルソースコードファイルが圧縮ファイルとして提供され、ファイルをダウンロードできます。このセクションは、クラスの一環ではなく、資料の提供を目的として提供されるセクションです。
セクション3.開発環境の構築
このセクションでは、Qtを使用したPythonプログラミングのための開発環境を設定する方法を深く探求します。また、ソースコードを作成するためのIDEとして、Visual Studio Codeの活用方法も見ていきます。
セクション4. Qtプログラミングの開始
Qtに基づいたPythonの簡単なGUIプログラミングを学びます。これにより、PythonでQtを効果的に活用するための基礎を築くことができます。
セクション 5. Signal and Slot
SignalとSlotはQtの重要なイベント処理メカニズムです。
セクション 6. Qt Resources
Qt Resource Systemは、アプリケーションに必要なさまざまなリソース(イメージ、アイコン、サウンドなど)を実行可能ファイルに統合する機能を提供します。
セクション7. Qt Designer
Qt Designerは、Qtアプリケーションのユーザーインターフェイスを直感的に設計するためのツールです。ドラッグアンドドロップ方式でウィジェットを配置してプロパティを調整することで、UIデザインの効率を最大化します。
セクション8. Style SheetによるGUIプログラミング
Qt Style Sheetは、UI要素の外観を細かく調整するための強力なツールです。CSSと同様の文法を使用して、ボタン、テキスト、およびレイアウトのスタイルを定義できます。
セクション 9. 多言語対応アプリケーションの実装
Qtは多言語サポートアプリケーションを簡単に開発する機能を提供します。
セクション 11. QMainWindow
QMainWindow は、デスクトップ環境で構造化された GUI を実装するのに適したクラスです。
セクション 10. Layout
LayoutはQtでウィジェットを効率的に配置し、画面サイズの変化に応じて動的に調整する機能を提供します。
セクション 12. Model/View
QtのModel / View構造は、大量のデータをさまざまな形式で視覚的に表現できる強力な機能を提供します。
セクション13.ファイル入出力とSTREAM処理
このセクションでは、QFileを介したファイル入出力方法と、一括データを効率的に処理できるQDataStreamとQTextStreamの使い方について説明します。
セクション 14. QPainter を使用した 2D Graphics
QPainterクラスは、QWidgetで2Dグラフィック要素を描画するために使用されます。
セクション15. QPainter実践編 - クロマキ画像処理
クロマキー技術を使用すると、特定の背景画像の色を別の画像に置き換える際に、QPainterを深く学ぶことができます。
セクション 16. タイマーの実装
QTimerクラスを使用して特定の時間間隔で特定の関数を呼び出す方法を学び、イベントベースのプログラミングの実践的な例を見てください。
セクション 17. Thread Programming
Qtのスレッド関連クラスを活用してスレッドプログラミングを容易に行う方法を学び、マルチスレッド環境での再進入(Re-Enterancy)を満たすスレッド実装方法を習得します。
セクション 18. Custom Widget
既存のウィジェットでは表現できないUI要素を実装するためにカスタムウィジェットを作成する方法を学び、非定型ウィンドウの実装に関する技術も習得します。
セクション 19. データベース
Qtは、さまざまなデータベースにアクセスできる統合APIを提供します。このセクションでは、QtのデータベースAPIを介してMySQL、MS-SQL、Oracle、SQLiteなど、さまざまなデータベースを扱う方法を学びます。
セクション 20. XML
QtのXMLモジュールを介してXMLデータを簡単に処理する方法を学びます。 SAXおよびDOM方式を活用したXMLデータ処理技術を習得します。
セクション 21. JSON
QtのJSONモジュールを使用してJSONデータを効率的に処理する方法を学び、JSON形式の理解度を高めます。
セクション 22. Printer Support
プリンタにテキストや画像を出力する方法を学び、実際のプリンタとの連携を通じて出力アプリケーション実装技術を習得します。
セクション 23. Network
Qt Networkモジュールを活用して、TCP / IPベースのネットワークアプリケーションを簡単に開発する方法を学びます。 TCPおよびUDPプロトコルを使用した実践的なケースをカバーします。
セクション 24. 開発した SW の配布のためのインストール配布の作成
このセクションでは、Pythonソースコードを実行可能ファイルに変換する方法と、Qt Install Frameworkを活用して、さまざまなプラットフォームでのインストールファイルの作成プロセスを深く学びます。
実戦まで考えた講義
実戦能力まで向上できるよう講義を構成しました。すべてのセクションごとの理論学習後は、実践例を講義に沿って直接実装していき、学べる授業が用意され、実務能力を高めることができます。
鮮やかなライブコーディングで集中アップ
知識共有者の姿を講義画面にまとめました。生き生きとしたライブコーディングで進行する授業で、まるでオフラインの授業を聴く感じでいつでもどこでも学習してみてください。
Q1:QtとPythonを一緒に使用する必要があるのはなぜですか?
回答: Qtは強力なGUIツールキットで、さまざまな機能とツールを提供して直感的でスタイリッシュなユーザーインターフェイスを構築するのに最適です。 Python は学習しやすく生産性の高い言語で、Qt と組み合わせると開発速度が速く、強力なアプリケーションを作成できます。つまり、Qtが提供するさまざまな機能をPythonの簡潔さと組み合わせて柔軟で強力なプログラムを開発できる最適な組み合わせなのです!
質問2:この講義にはどのような背景知識が必要ですか?
答え:基本的なPythonプログラミング知識だけで十分です。 GUIプログラミングの経験がなくても心配しないでください!講義は基礎からじっくりと説明しますので、途中で難しい部分があってもゆっくりと従えばいいです。まるで料理を初めて学ぶように、材料を準備し、レシピを身につけて、おいしい結果を作ることができる過程を一緒にします。
質問3:講義の後、どのプロジェクトを作成できますか?
回答:講義を終えたら、パーソナライズされたノートアプリやデータビジュアライゼーションツール、さらにはIoTデバイスのコントロールプログラムまで作成できます。想像力を発揮してみてください。自分のニーズに合わせて多様な機能を追加し、多言語サポートも実装してみると、自分だけの素敵なアプリケーションを持つことになります。さらに、友達に自慢できる「自分だけの作品」も作れますよ!
Q4:Qtに初めて触れるのは難しいことがありますか?
答え:最初は少し複雑に見えるかもしれませんが、私はあなたと一緒にやるので心配しないでください! Qtの構造と用語は見慣れないかもしれませんが、私と一緒にゆっくりと各部分を分解して理解するのに役立ちます。まるでパズルを合わせるように、各要素を組み合わせて完璧な絵を作っていけるようにご案内いたします。難しい部分も一緒に乗り越えていくと、後には皆さんがQt専門家になっているでしょう!
オペレーティングシステムとバージョン(OS):このレッスンはWindowsオペレーティングシステムで行われ、macOS、Linux、Ubuntuなどのさまざまな環境でも利用できます。ただし、Windowsを使用することをお勧めします。
開発環境の構築に必要なソフトウェアは、授業中に一緒にインストールする時間を設けたので、コンピュータとオペレーティングシステムだけを準備してください。
受講後の学習参考資料として、セクション2からこのレッスンのすべてのサンプルソースコードをダウンロードできます。
授業中に理解できない部分や気になる点が生じたら躊躇しないで質問してください。一緒に話し合い、解決するプロセスが学習に大いに役立ちます。
学習対象は
誰でしょう?
Qtを使ってPythonでGUIを実装したい人
さまざまな分野のAPIを簡単かつ迅速にPythonで実装したい人
前提知識、
必要でしょうか?
基本的なPythonプログラミングの知識:Pythonの基本的な文法とデータ構造(リスト、辞書など)、関数の定義と呼び出しの理解が必要です。これらの基礎知識があれば、Qtを活用したプログラミングに簡単にアクセスできます。
1,065
受講生
102
受講レビュー
104
回答
4.7
講座評価
9
講座
근무경력
현: Embedded 분야 SW Team leader
LG전자, VS사업부 IVI선행플랫폼/모듈개발
SW마에스트로, SW 멘토
강의경력
삼성전자, Qt & QML 강의
LG전자, Qt & QML 분야 사내 강사
한컴아카데미 Qt 강의 출강
다수의 IT기업 Qt 강의 출강
저서
Qt 프로그래밍
Qt Quick 프로그래밍
Qt5 프로그래밍 가이드
MeeGo 프로그래밍 완벽 가이드
Qt 실전 프로그래밍
SW커뮤니티 운영
Qt 개발자 커뮤니티 운영자 ( www.qt-dev.com )
全体
93件 ∙ (13時間 52分)
講座資料(こうぎしりょう):
全体
9件
4.9
9件の受講レビュー
¥6,000
知識共有者の他の講座を見てみましょう!
同じ分野の他の講座を見てみましょう!