Object Oriented Programming with C++ Training Course
Object-Oriented Programming in C++ represents a methodology for implementing core object-oriented principles—such as encapsulation, inheritance, and polymorphism—within the C++ programming language.
This instructor-led live training, available either online or onsite, is designed for developers seeking to leverage C++ to create modular, maintainable, and scalable applications through object-oriented techniques.
Upon completion of this training, participants will be able to:
- Set up and configure a C++ development environment for structured programming.
- Apply object-oriented design principles using C++ constructs such as classes, objects, and pointers.
- Implement encapsulation and abstraction within C++ programs.
- Design reusable and maintainable code by applying object-oriented patterns in C++.
Format of the Course
- Interactive lectures and discussions.
- Extensive exercises and practical practice.
- Hands-on implementation in a live-lab environment.
Course Customization Options
- To request customized training for this course, please contact us to arrange.
Course Outline
- Overview
- Characteristics
- Function Overloading
- Scope Resolution Operator
- Classes in C++
- Access Specifiers
- Constructors, Destructors
- Static Members and Functions
- Friend Classes and Friend Functions
- Operator Overloading
- Data Conversions
- Inheritance and Polymorphism
- Exception Handling and Templates
- Input and Output Streams
Requirements
- A solid understanding of basic programming concepts, including variables, loops, and functions.
- Experience with the fundamentals of C++ programming.
- Basic knowledge of software development concepts.
Audience
- C++ programmers looking to master object-oriented programming techniques.
- Software developers transitioning from procedural to object-oriented design.
- Engineers and programmers interested in structuring large-scale C++ applications.
Open Training Courses require 5+ participants.
Object Oriented Programming with C++ Training Course - Booking
Object Oriented Programming with C++ Training Course - Enquiry
Testimonials (1)
Good examples, focus on most useful material
Piotr Sowinski - Intel Technology Poland
Course - Object Oriented Programming with C++
Upcoming Courses
Related Courses
Advanced Embedded Systems Development
35 HoursThis instructor-led, live training in Taiwan (online or on-site) is designed for engineers seeking to master embedded C programming for a variety of microcontrollers across different processor architectures, including 8051, ARM CORTEX M-3, and ARM9.
Arduino Programming for Beginners
21 HoursIn this instructor-led live training in Taiwan, participants will learn how to program Arduino for real-world applications, such as controlling lights, motors, and motion detection sensors. This course requires the use of actual hardware components in a live lab environment, rather than software-simulated hardware.
Upon completion of this training, participants will be able to:
- Program Arduino to control lights, motors, and other devices.
- Gain a solid understanding of Arduino's architecture, including inputs and connectors for add-on devices.
- Integrate third-party components such as LCDs, accelerometers, gyroscopes, and GPS trackers to expand Arduino's functionality.
- Understand the various programming language options available, ranging from C to drag-and-drop languages.
- Test, debug, and deploy Arduino solutions to address real-world problems.
Buildroot: a Firmware Generator for Embedded Systems
7 HoursBuildroot is an open-source project comprising scripts that generate a cross-compilation toolchain, a customizable root filesystem image, and a Linux kernel tailored for embedded devices. Through this hands-on course, participants will learn how to utilize Buildroot effectively:
- Selecting software to include in the root filesystem.
- Adding new packages and modifying existing ones.
- Adding support for new embedded boards.
Participants will produce bootable filesystem images during the course. Remote sessions utilize the QEMU emulator, while in-person classes can employ either QEMU or real embedded boards selected by the instructor.
Other projects with similar objectives include the Yocto Project and OpenWRT. Please refer to these presentations to determine which solution best fits your requirements.
Circuits and Electronics Fundamentals
14 HoursThis instructor-led, live training in Taiwan (online or onsite) is designed for engineers and computer scientists who wish to apply the fundamentals of circuits and electronics to design devices and systems that utilize the properties of electrical components for developing hardware functionalities.
By the end of this training, participants will be able to:
- Set up and configure the necessary tools and programs for circuits and circuit board development.
- Understand the basic principles behind circuits and electronics engineering.
- Utilize primary electronic components to construct efficient computer hardware technologies.
- Optimize electronic devices by implementing circuit analysis methods.
- Apply the fundamentals of electronics and circuits to the development of enterprise applications.
Digital Signal Processing (DSP) Fundamentals
21 HoursThis instructor-led live training in Taiwan (online or onsite) is tailored for engineers and scientists who wish to learn and apply DSP implementations to efficiently handle different signal types and gain better control over multi-channel electronic systems.
By the end of this training, participants will be able to:
- Set up and configure the necessary software platform and tools for Digital Signal Processing.
- Understand the concepts and principles that are foundational to DSP and its applications.
- Familiarize themselves with DSP components and employ them in electronics systems.
- Generate algorithms and operational functions using the results from DSP.
- Utilize the basic features of DSP software platforms and design signal filters.
- Synthesize DSP simulations and implement various types of filters for DSP.
Embedded C Application Design Principles for Automotive Professionals
14 HoursThis two-day course delves into essential design principles, supported by practical code examples and the latest industrial technologies, providing significant value to automotive software developers.
Embedded C Application Design Principles
14 HoursThis instructor-led, live training (available online or onsite) is designed for C developers who want to learn embedded C design principles.
By the end of this training, participants will be able to:
- Understand the design considerations that make embedded C programs reliable
- Define the functionality of an embedded system
- Define the program logic and structure to obtain the desired result
- Design a reliable, error-free embedded application
- Obtain optimal performance from target hardware
Format of the Course:
- Interactive lecture and discussion
- 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.
Electronic Control Unit (ECU) - Practical Vector
28 HoursThis instructor-led, live training in Taiwan (online or onsite) is aimed at intermediate-level automotive engineers and technicians who wish to gain hands-on experience in testing, simulating, and diagnosing ECUs using Vector tools like CANoe and CANape.
By the end of this training, participants will be able to:
- Understand the role and function of ECUs in automotive systems.
- Set up and configure Vector tools such as CANoe and CANape.
- Simulate and test ECU communication on CAN and LIN networks.
- Analyze data and perform diagnostics on ECUs.
- Create test cases and automate testing workflows.
- Calibrate and optimize ECUs using practical approaches.
Electronic Control Unit (ECU) - Theoretical Vector
21 HoursThis instructor-led live training Taiwan (online or onsite) is designed for intermediate automotive engineers and embedded systems developers who wish to grasp the theoretical aspects of ECUs, emphasizing Vector-based tools and methodologies used in automotive design and development.
By the conclusion of this training, participants will be able to:
- Understand the architecture and functions of ECUs in modern vehicles.
- Analyze communication protocols used in ECU development.
- Explore Vector-based tools and their theoretical applications.
- Apply model-based development principles to ECU design.
FreeRTOS: Programming for Real Time Operating Systems
14 HoursIn this instructor-led live training, participants will learn how to code using FreeRTOS by stepping through the development of a simple RTOS project on a microcontroller.
By the end of this training, participants will be able to:
- Understand the fundamental concepts of real-time operating systems.
- Learn about the FreeRTOS environment.
- Acquire skills in coding with FreeRTOS.
- Interface a FreeRTOS application with hardware peripherals.
Learning Vivado
14 HoursThis instructor-led live training in Taiwan (online or onsite) is tailored for FPGA developers who wish to utilize Vivado for designing, debugging, and implementing hardware solutions.
By the end of this training, participants will be able to:
- Develop HDL systems with C code and Vivado tools.
- Generate and implement soft processors in Vivado.
- Test and simulate C code using Vivado.
LEDE: Set Up a Linux Wireless Router
7 HoursThe LEDE Project (Linux Embedded Development Environment) is a Linux operating system based on OpenWrt. It serves as a comprehensive alternative to the proprietary firmware provided by manufacturers for a broad spectrum of wireless routers and network-related devices.
In this instructor-led live training, participants will learn how to set up a LEDE-based wireless router.
Audience
- Network administrators and technicians
Format of the course
- A blend of lectures, discussions, exercises, and extensive hands-on practice
Yocto Project
28 HoursIn this instructor-led live training in Taiwan, participants will learn how to create a build system for embedded Linux based on the Yocto Project.
By the end of this training, participants will be able to:
- Understand the fundamental concepts behind a Yocto Project build system, including recipes, metadata, and layers.
- Build a Linux image and run it under emulation.
- Save time and energy building embedded Linux systems.
The Yocto Project - An Overview - hands-on
28 HoursDescription
This four-day training blends theoretical concepts with practical exercises to introduce participants to the Yocto Project. It addresses common questions such as:
- Is it truly necessary to utilize a different toolchain, library, or package version for every GNU/Linux project, along with adopting a distinct workflow?
- Can you guarantee that the development environment remains consistent across all developers and suppliers, while still enabling identical builds in the future, more than ten years from now?
- Can the Yocto Project assist in identifying the software licenses applicable to the packages you use?
Practical sessions are conducted on target hardware (e.g., Beagle Bone Black Rev. C - http://beagleboard.org/BLACK). Upon completion of the training, you will receive a Docker image containing Ubuntu 14.x with all dependencies pre-installed, along with examples, allowing you to engage with the course material in your own lab environment. Please note that this is not an introductory course on Embedded GNU/Linux. Participants should already possess a working knowledge of how Embedded GNU/Linux operates, including how to configure and build the GNU/Linux kernel and kernel drivers.
Who should attend?
This training is suitable for individuals who already utilize GNU/Linux in their projects and have likely heard of the Yocto Project but may have hesitated to explore it further or encountered difficulties in using it. If you are unsure about how your daily workflow aligns with the Yocto Project or find the YP generally complex—questioning why such complexity is necessary when previous methods seemed simpler—this course will help you decide whether the YP is right for you. The workshop is designed for software engineers, development engineers, system engineers, testers, administrators, and other interested parties who have a solid understanding of Embedded GNU/Linux.