The key learning objective is to get real hands-on experience on Qt programming. The content is the combination of Qt Essentials Graphics and Widgets editions extended with multithreading, networking, and WebKit programming. Compared to other editions, Bootcamp includes more hands-on labs for attendees to learn Qt by programming.

You will learn Qt development and build tools, especially QtCreator for compiling and debugging Qt programs. Qt object model with QObject base class in addition to the meta-object system extending Qt with signals and slots and dynamic properties will become familiar to you.

You will learn to use Qt core classes for file handling, string handling, and storing objects to Qt containers. In addition, you will learn Qt variant class, enabling the storage of several types to the containers.

One objective is user interface programming. You will learn how to use Qt widgets, how to customize them by changing event handling or paint functions, and how to create completely customized widgets. Other options, like Qt GraphicsView framework, in UI creation will be covered as well.

You will learn to use list, table, and tree models to store and corresponding views to render the data.

Qt concurrency issues and several approaches to use threads will be introduced as well. You will learn which model to apply in different cases and how to write safe concurrent code in Qt.

In addition, you will learn to use Qt WebKit as a widget in your programs.

Intended audience
Developers who want to get a real hands-on touch of Qt. The training contains short theory sessions and plenty of demonstrations and programming exercises.

Skills acquired
Upon completing the course you will be able to:

  • Write GUI applications with Qt
  • Use QtCreator IDE for building and debugging Qt programs
  • Create user interfaces with both ready-made Qt widgets and custom widgets using QtDesigner
  • Understand Qt object model and meta-object system
  • Use Qt core classes
  • Create desktop applications with menus, dialogs, docked windows, and localized resources
  • Apply Qt SAX and DOM XML APIs for data IO
  • Use Qt model/view framework in applications
  • Create and manage SQL databases using Qt classes
  • Write user interfaces with Qt GraphicsView framework
  • Understand how to affect GraphicsView performance with rendering hints and painting flags
  • Use Qt state machine and animation framework to create a fluid user experience in user interfaces
  • Manage processes and use inter-process communication in Qt
  • Apply several Qt multithreading models
  • Use networking, including sockets and HTTP
  • Embed Qt WebKit into applications running HTML5, CSS, and JavaScript –based user interfaces

Course Duration
5 days

Course format
35% of lectures and 65% of hands-on exercises.

Good command of C++ programming language