System Update This Sunday

You may experience a delay in the course registration process and accessing your student account on Sunday from 8 a.m. through Monday at 8 a.m. We're sorry for any inconvenience!

COVID Updates

C++ Programming | CMPR.X404

C++ Programming | CMPR.X404

Formerly "C++ Programming, Comprehensive"

This course covers object-oriented programming using modern C++ (C++ 2017 and above). Because most automation, embedded applications, gaming, and many large data processing applications are written in C++, it is essential that software developers understand and master it. Hardware engineers are increasingly using C++ and OOP in system verification tasks. This course offers an excellent foundation in developing optimized modern C++ applications. The participants will learn to write faster and modular code, and the debugging techniques, for real-world applications. There will be assignments and exercises to accompany the lectures.

Learning Outcomes:
At the conclusion of the course, you should be able to:

  • Apply object oriented concepts to software development problems using modern C++
  • Understand and use the basic programming constructs of C++
  • Manipulate various C++ data types, such as arrays, strings, and pointers
  • Write C++ code using principles of object-oriented programming
  • Understand design patterns in C++ using singleton pattern
  • Manage memory appropriately, including proper allocation/deallocation procedures using unique and smart pointers

Topics Include:

  • Principles of object-oriented analysis and design
  • Stream classes for input/output and to read/write files
  • User defined data types using structures and classes
  • Declarations of identifiers, pointers, function pointers and references
  • Reuse code and extend existing data types through inheritance
  • Memory management and dynamic array declarations
  • Create class/function templates and understand STL
  • Use static member variables and static member functions
  • Declare friend functions and friend classes
  • Function overloading and operator overloading
  • Polymorphism concept using virtual function
  • Understand exceptions handling techniques using try/catch syntax

Note(s): Students must have access to a 2017 or above C++ compiler.

Skills Needed: Experience with a high level programming language such as C/Java/Python.

Have a question about this course?
Speak to a student services representative.
Call (408) 861-3860
ENROLL EARLY!
  • Save your seat and help us confirm course scheduling. Enroll at least seven days before your course starts.
  • ACCESSING CANVAS—Learn more about accessing your course on Canvas in our FAQ section.

Prerequisite(s):

Sections Open for Enrollment:

Open Sections and Schedule
Start / End Date Units Cost Instructor
05-14-2022 to 07-30-2022 3.0 $1020

Jagadeesh Vasudevamurthy

Enroll

Schedule

Date: Start Time: End Time: Meeting Type: Location:
Sat, 05-14-2022 9:00 a.m. 12:00 p.m. Flexible SANTA CLARA / REMOTE
Sat, 05-21-2022 9:00 a.m. 12:00 p.m. Flexible SANTA CLARA / REMOTE
Sat, 06-04-2022 9:00 a.m. 12:00 p.m. Flexible SANTA CLARA / REMOTE
Sat, 06-11-2022 9:00 a.m. 12:00 p.m. Flexible SANTA CLARA / REMOTE
Sat, 06-18-2022 9:00 a.m. 12:00 p.m. Flexible SANTA CLARA / REMOTE
Sat, 06-25-2022 9:00 a.m. 12:00 p.m. Flexible SANTA CLARA / REMOTE
Sat, 07-09-2022 9:00 a.m. 12:00 p.m. Flexible SANTA CLARA / REMOTE
Sat, 07-16-2022 9:00 a.m. 12:00 p.m. Flexible SANTA CLARA / REMOTE
Sat, 07-23-2022 9:00 a.m. 12:00 p.m. Flexible SANTA CLARA / REMOTE
Sat, 07-30-2022 9:00 a.m. 12:00 p.m. Flexible SANTA CLARA / REMOTE