Overview
C++ is an object oriented programming language based on C. Qt is a framework for developing GUIs for C++ applications. Distributed C++ applications often use a messaging library such as ZeroMQ to communicate asynchronously with other components, services and applications. Messages are first serialized using a serialization protocol such as Protocol Buffers, which allows the messages to be transmitted as compiled bytes that are smaller and lighter than JSON or XML files.
This instructor-led, live training (online or onsite) provides introductory coverage of C++, the Qt GUI framework, and various communication technologies such as ZeroMQ and Protocol Buffers that can be used for writing distributed applications.
By the end of this training, participants will have the necessary knowledge and practice to write and compile an application using C++, Qt and gcc on Linux Centos 6/7. Participants will also integrate asynchronous messaging capabilities using Zero MQ and Protocol Buffers.
Format of the Course
- Interactive lecture and discussion.
- Lots of exercises and practice.
- Hands-on implementation in a live-lab environment.
Course Customization Options
- To request a customized training for this course, please contact us to arrange.
Requirements
- Knowledge of basic programming concepts.
Audience
- Software developers
Course Outline
Introduction
Overview of C++ and QT Features
Setting up the Development Environment on Linux Centos 6/7.
Creating a Sample C++ Application
Implementing a GUI with QT
Objects and Core Types
Models and Views
Widgets and Designer
Applications and Painting
Creating 2D and 3D Graphics (Square, Circle, Polygons, etc.)
Multithreaded Programming
Inter-Process Communication
Understanding Network Communications Patterns (Request/Reply, Publish-Subscribe, etc.)
Asynchronous Messaging with ZeroMQ
Serializing Data with Protocol Buffers
Testing and Debugging the Application
Troubleshooting
Summary and Conclusion