C++, QT, ZeroMQ and Protocol Buffers Training Course
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.
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
Requirements
- Knowledge of basic programming concepts.
Audience
- Software developers
Need help picking the right course?
C++, QT, ZeroMQ and Protocol Buffers Training Course - Enquiry
Testimonials (4)
Practical examples.
Mateusz - Aplikacje Krytyczne
Course - BizTalk for Developers
interesting content
Mike Bassi - SRC Aus
Course - OpenCL
I like how helpful Clement is.
Mateera Kaikko - ASML US, LLC
Course - gRPC
I was very lucky to have one-to-one training and it gave me a good grounding in the subject as well as exploring some of my real use-cases that were really complex.
Melissa Harrison
Course - XQuery
Upcoming Courses
Related Courses
BizTalk for Developers
21 HoursThis instructor-led, live training in China (online or onsite) is aimed at intermediate-level developers who wish to use BizTalk to connect legacy systems with newer applications.
By the end of this training, participants will be able to:
- Install and configure BizTalk.
- Automate business processes using BizTalk.
- Understand BizTalk messaging.
- Integrate BizTalk with Azure and Sharepoint.
- Deploy and troubleshoot a BizTalk installation.
Biztalk for Administrators
35 HoursThis instructor-led, live training in China (online or onsite) is aimed at admins and engineers who wish to design, deploy and manage a multi-server BizTalk Server environment.
By the end of this training, participants will be able to:
- Install and configure BizTalk Server.
- Set up and manage BizTalk users.
- Set up and secure message routing within an organization.
- Configure EDI-based integration with partners outside of the organization.
- Deploy, monitor, and manage business rules.
- Automate the deployment of BizTalk applications.
- Track, monitor and analyze Business Activity.
- Plan and implement high-availability and disaster recovery for Biztalk Server.
BizTalk for Administrators - Beginner to Advanced
70 HoursThis instructor-led, live training in China (online or onsite) is aimed at admins and engineers who wish to design, deploy and manage a multi-server BizTalk Server environment.
By the end of this training, participants will be able to:
- Install and configure BizTalk Server.
- Set up and manage BizTalk users.
- Set up and secure message routing within an organization.
- Configure EDI-based integration with partners outside of the organization.
- Deploy, monitor, and manage business rules.
- Automate the deployment of BizTalk applications.
- Track, monitor and analyze Business Activity.
- Plan and implement high-availability and disaster recovery for Biztalk Server.
- Optimize the performance of BizTalk Server and its envrionment.
- Automate the monitoring of business activity.
- Troubleshoot runtime exceptions.
- Automate testing of Biztalk.
- Plan and execute systematic maintenance of Biztalk.
gRPC
7 HoursThis instructor-led, live training in China (online or onsite) is aimed at software engineers, programmers, and developers who wish to create, implement, and manage gRPC services in their applications.
By the end of this training, participants will be able to:
- Set up a gRPC service to connect to a server and create projects.
- Implement server and client to integrate with applications.
- Monitor gRPC services using authentication systems and benchmarking tools.
HashiCorp Nomad
14 HoursThis instructor-led, live training in China (online or onsite) is aimed at DevOps engineers and developers who wish to use HashiCorp Nomad to deploy and scale applications with ease while reducing overhead on operations.
By the end of this training, participants will be able to:
- Install and configure HashiCorp Nomad.
- Deploy and manage containers and non-containerized applications.
- Manage resources, scheduling, and operations within a consolidated system.
- Enable scaling nodes and integration of services in a single cluster.
HashiCorp Vault
14 HoursThis instructor-led, live training in China (online or onsite) is aimed at DevOps engineers or developers who wish to use HashiCorp Vault to control access to passwords, database credentials, API keys, tokens, and certificates in an integrated system.
By the end of this training, participants will be able to:
- Install and deploy HashiCorp Vault.
- Understand and use the different services and components of HashiCorp Vault.
- Implement authentication methods, security policies, and execute administrative tasks to secure an infrastructure.
- Deploy and use HashiCorp Vault services on container orchestrators such as Nomad and Kubernetes.
Apache Mesos
14 HoursThis instructor-led, live training in China (online or onsite) is aimed at IT administrators, software engineers, and developers who wish to use Apache Mesos to efficiently manage resource workloads and applications in large-scale clustered environments.
By the end of this training, participants will be able to:
- Install, configure, and run Apache Mesos for distributed systems.
- Manage resource sharing and allocation of multiple applications and frameworks.
- Implement scheduling mechanism for managing tasks.
- Set up and use Marathon to handle container orchestration on Apache Mesos.
OpenCL
21 HoursOpenCLis a standard for programming heterogeneous computers built from CPUs, GPUs, and other processors. It includes a framework to define the platform in terms of a host, such as a CPU, and one or more compute devices, such as a GPU plus a C-based programming language for writing programs for the compute devices. Using OpenCL, a programmer can write task-based and data-parallel programs that can take advantage of these different types of processors in a single system.
GUI Programming with Python and PyQt
21 HoursThis instructor-led, live training in China (online or onsite) is aimed at persons who wish to program a visually attractive software application using Python and the Qt UI framework.
By the end of this training, participants will be able to:
- Set up a development environment that includes all needed libraries, packages and frameworks.
- Create a desktop or server application whose user interface functions smoothly and is visually appealing.
- Implement various UI elements and effects, including widgets, charts, layers, etc. to achieve maximum effect in usability.
- Implement good UI design and code organization during the design and development phase.
- Test and debug the application.
Qt Quick and QML
7 HoursThis instructor-led, live training in China (online or onsite) is aimed at web designers who wish to build cross platform and dynamic UIs using Qt Quick and QML.
By the end of this training, participants will be able to:
- Design prototypes for application UIs using QML.
- Create and implement an application's UI elements using QML.
- Implement animations, transforms, and transitions to create a more responsive experience for users of the application.
XML Fundamentals
21 HoursThis course is intended for analysts, designers and administrators of systems based on XML technology.
The training is an introduction to XML and its key technologies. Allows you to acquire the skills involved in creating valid XML documents, modeling the structure of an XML document (using DTP or XML Schema) and transformations of XML files to other formats (XHTML, HTML, TXT, PDF).
XQuery
14 HoursThis training provides:
- A high-level overview and quick tour of XQuery
- Information to write sophisticated queries, without being bogged down by the details of types, namespaces, and schemas
- Advanced concepts for users who want to take advantage of modularity, namespaces, typing and schemas
- Guidelines for working with specific types of data, such as numbers, strings, dates, URIs and processing instructions
- A complete alphabetical reference to the built-in functions and types
Participants will also learn about XQuery's support for filtering, sorting, and grouping data, as well as how to use FLWOR expressions, XPath, and XQuery tools for extracting and combining information. During the training they will find out how to apply all of these tools to a wide variety of data sources, and how to recombine information from multiple sources into a single final output result.