Qtプログラミング One framework, one codebase, any platform.
Qtとは何ですか? VIDEO
Qtはアプリケーションフレームワークで、Qt を利用して開発したSW はMS Windows、MacOS、Android、iOS、Embedded Linux、QNX などですべて互換( サポート) されます。 したがって、オペレーティングシステム固有の互換性のあるアプリケーションを別々に開発する必要はありません。
そしてQt は単にGUI のための開発フレームワークではありません。 Qt は、さまざまな産業分野で必要とされる膨大なAPI を提供します。
一度Qt で開発されたSW は、各オペレーティングシステムに移植できます。 たとえば、 Android でApp を開発するにはJAVA とAndroid SDK、NDK を使用する必要がありますが、 Qt が使用するC ++ を使用して開発すると、 Android で動作するApp を開発できます。
Qt で一度開発したアプリケーションは、 Desktop オペレーティングシステム、 モバイルオペレーティングシステムEmbedded オペレーティングシステムからすべて移植できます。 したがって、開発に要する人件費、 時間を最小限に抑えることができる開発フレームワークであり、 C++ を使用します。 開発フレームワークには、多言語対応のツールとインストールディストリビューション( インストールファイル) を作成するための開発ツールも含まれています。
Qtで何ができますか? さまざまな産業分野でもQt を利用してSW を開発できます。 有数の数万は自動車OEM でQt を使用しています。 そしてテレビ、 家電、 建設など数多くの分野でQt を利用してSW を開発しています。
リアルタイムOSであるFreeRTOSオペレーティングシステムと同じMCUレベルでも動作するオペレーティングシステムでもQtで開発したSWポーティングが可能です。
Qt、どのように使用しますか? Qt は開発IDE ツールとしてQt Creator IDE ツールを提供します。 ただし、Visual Studio IDE ツールに精通している開発者のためにQt Visual Studioアドイン をインストールして、Visual Studio IDE ツールでQt を使用してSW を開発できます。
これを学ぶ Qt を 使用して開発すると、さまざまなオペレーティングシステムと互換性が あるため、時間とコストを最大限に減らすことができます。
したがって、このコースを受講すると、さまざまな産業分野のSW を開発する能力を向上させることができ、 Qt 中級者以上の能力を保持できます。
Qtが提供する膨大なAPI学習 マルチプラットフォームで同じように動作するアプリケーションソフトウェアを開発する方法 Qtが提供するツールの使い方を学ぶ
こんな方におすすめです さまざまなプラットフォームと互換性のあるSWを開発する必要がある方 様々な産業分野で必要とするSWをQtを利用して開発したい方
講義構成 📖セクション1. Qt 6の紹介と特徴 Qtがどのような特徴と利点を持っているかを見てください。このセクションでは、本格的な学習を行う前にQtについての全体的な内容について説明します。
セクション2. Qt 6 Frameworkのインストール Qtは、MS Windows、Linux、macOS、Android、iOS、QNX、FreeRTOSなど、さまざまなプラットフォームで動作するアプリケーションを開発できるCross Platformをサポートしています。このセクションでは、さまざまなプラットフォームでQtをインストールする方法とQtのバージョン別の違いを学びます。
セクション3. Qtプログラミングの開始 Qtを使ってサンプルアプリケーションを作成する方法を学びます。アプリケーションで種類として Console ベースのアプリケーション (GUI が不要なアプリケーション)、GUI ベースのアプリケーションを開発する方法について学習します。そしてQtはDesignerツールを提供します。 Designerツールを使用すると、コーディングしなくてもGUI Widgetを簡単に使用して画面に配置できます。 したがって、このセクションでは、Qtを使用して簡単なアプリケーションを作成する方法とDesignerツールを使用する方法について学びます。
セクション 4. Signal と Slot SignalとSlotはQtによって使用されるイベントです。 Signal はイベントで、Slot はイベントが発生した場合に処理を担当する関数を指します。たとえば、いくつかのボタンがありますが、このボタンをクリックしたときにクリックイベントが発生したとします。これを Signal といいます。つまり、ボタンClick Signalが発生したとします。そしてボタンでクリックされると、どの関数が実行されるようにするSlot関数と呼ばれます。このセクションでは、SignalとSlotの使い方について学びます。
セクション5. GUIプログラミング、ウィジェット Button、Combo Box、Check Boxなどの要素をQtではWidgetと呼びます。すべてのWidgetはQWidgetを継承して実装されています。たとえば、ボタンなどの機能を提供するGUIとしてQPushButtonがあります。このクラスもQWidgetを継承して実装されたクラスです。このセクションでは、Qtが提供するウィジェットの中でよく使用されるウィジェットを中心に学びます。
セクション6. GUIプログラミング、レイアウト Layout とは Qt が提供する Widget を画面に配置し、動的にサイズが変更されると、Widget のサイズも動的に (自動的に) 変更されるようにするために Qt は Layout を提供します。このセクションでは、Qtが提供するレイアウトについて学びます。
セクション7. GUIプログラミング、QMainWindow QMainWindow は、デスクトップで使用する Windows 形式の GUI を実装するときに使用します。たとえば、メニュー、Tool Bar、Main Widget 領域、左右配置領域、下部の Status Bar など、整形化された型の GUI を実装する際に有用に使用できる QMainWindow について学びます。
セクション8.基本データ型と有用な型 Qtが提供する型と有用な型クラスを学びます。たとえば、QStringは文字列を格納するために使用できる型クラスです。このように、Qtが提供する型の中で便利で頻繁に使用できる型と型クラスを学びます。
セクション 9. Container Classes Container とは Template です。 Qt では、Container として QList、QHash など便利に使用できるさまざまな Container を提供します。このセクションでは、Qtが主に使用するContainerを学びます。そして、例を通してより詳細なコンテナクラスを学びます。
セクション 10. Model/View 大量のデータを表やツリーなど、さまざまな形式でGUIに表示できます。 Qtは、この機能をGUIで簡単に実装できるように、ModelとViewという概念を使用します。このセクションでは、Qtが提供するModelとViewを学びます。
セクション 11. STREAM 大量のデータを処理すると、ブロックが発生する可能性があります。たとえば、約100MBのファイルを読み込むと、瞬時にアプリケーションがブロックされます。したがって、Qtはこのような問題を解決し、大量のデータにもっと簡単にアクセスするためにSTREAMを提供します。このセクションでは、Qtが提供するQDataStreamとQTextStreamの使い方について学びます。
セクション12.ファイル入出力 Qt 提供する Class を利用してファイルをハンドリングできる方法について学びます。そして、Qtではファイルを処理するためにQFileを使用しますが、このクラスではファイルからデータをREADまたはWRITEするときにSTEAMを使用できます。したがって、このセクションでは、QFileとSTREAMを使用してファイルを処理する方法について学びます。