banner
CPA: Programming Essentials in C++
Recommended learning hours: 70hrs. Available in English. This training can be taken as a self-paced e-learning course. CPA: Programming Essentials in C++ teaches the basics of programming in the C++ programming language, as well as the fundamental concepts and techniques used in object-oriented programming. The course begins with the universal basics, without relying on object concepts, then gradually extends to advanced concepts that are encountered using the objective approach.
Prerequisites
No prior knowledge of programming is required.
Qualifications
Cisco Certificate of course completion. &/or CPA - C++ Certified Associate Programmer Certification.
Required number of optional units
0
Units

After completing this module, the student will be able to:

  • Use the:
    •  if-else statement
    • while loop
    • for loop
    • nested for loops
    • for loop to iterate through vectors
    • nested for loops to iterate through rows and columns
    • switch statement
  • Find a proper C++ implementation of verbally defined rules
  • Test code using simple input and output
  • Build a clearly formatted output
  • Build complete programs that solve simple problems
  • Protect code from incorrect data input
  • Construct a branched and multifunctional code
  • Build complex sequence of elementary operations
  • Choose types and operations adequate to a given problem
  • Explain the concept of classical iterative algorithms and use them
  • Understand integer types representation ranges
  • Understand float types representation ranges
  • Use non-conflicting control variable names
  • Use bitwise and shift operators
  • Use bitmasks to test a particular bit of a variable
  • Declare and initialize one-dimensional arrays (vectors)
  • Explain the concept of using vectors in iterative problems
  • Combine different kinds of loops
  • Manipulate vectors
  • Translate iterative mathematical formulas into C++ code
  • Use two-dimensional arrays and their initializers
  • Use and declare structured data types and variables

Helps to introduce you to and give you necessary orientation for the course 

Introduction to IDE online tools in a new window

After completing this module, the student will be able to:

  • Understand the concept of C++ class and object syntax
  • Create objects
  • Access object members
  • Create setter/getter access methods
  • Limit the range of accepted values in access methods
  • Understand and implement different strategies for obtaining derived data
  • Define a C++ class from scratch
  • Model real-world entities with classes and objects
  • Limit acceptable input range
  • Manage multiple objects
  • Provide meaningful and helpful representation of objects
  • Understand the interactions between objects of the same type
  • Create objects based on objects of other objects of custom classes (don't worry - this sounds more difficult than actually is)
  • Understand the concept of inheritance syntax and operation
  • Share functionality between objects using inheritance
  • Implement data structures in C++
  • Understand the concept of dynamic allocation of C++ objects
  • Prevent memory leaks and deallocate acquired resources
  • Provide derived data about the implemented data structure
  • Keep the data structure consistent at all times
  • Traverse data structures
  • Access data stored in data structures
  • Create copies of data structures
  • Implement and use copy constructors

After completing this module, the student will be able to:

  • Understand situations when exceptions are thrown
  • Understand the concept of exceptions handling
  • Identify situations when exceptions are thrown
  • Add code to handle and throw exceptions
  • Write his/her own exception classes
  • Pass additional information in exceptions
  • Handle file-related exceptions
  • Throw exceptions in constructors
  • Use exceptions in real programs
  • Simplify exception throwing

After completing this module, the student will be able to:

  • Write operators code
  • Write iostream operators
  • Write operators to modify the content of classes
  • Understand the non-natural way of using operators
  • Understand the legitimacy of using overloaded operators
  • Write overload operators code
  • Represent values with enums
  • Understand and use the modulo operator
  • Find a good place to insert operators code
  • Use operators to operate on the content of classes
  • Write operators code to class hierarchy
  • Use operators with complex classes
  • Use operators and exceptions in real programs

After completing this module, the student will be able to:

  • Explain how a sample C++ program works
  • Explain the concept of include and using directives
  • Explain the concept of integers, floating-point numbers, operators and arithmetic operations in C++ programming
  • Discover and fix basic syntax errors
  • Modify the structure of a C++ program
  • Perform basic calculations
  • Understand the precedence and associativity of C++ operators and the proper use of parentheses
  • Use the shortcut and pre/post increment/decrement operators
  • Build simple expressions
  • Translate verbal description into programming language
  • Test code using known input and output data
  • Compare values using relational operators
  • Build Boolean expressions using logical operators

After completing this module, the student will be able to:

  • Declare pointer variables
  • Assign values to pointer variables
  • Use incrementation to move the pointer through adjacent memory locations
  • Understand internal matrix representation
  • Use pointers to access desired memory locations
  • Combine the for loops to manipulate two-dimensional arrays
  • Understand the concept of defining and invoking a function
  • Pass argument values into a function
  • Refactor an existing code to meet new requirements
  • Build a set of cooperating functions
  • Signal erroneous arguments using a specific return value
  • Use structured types
  • Make use of standard system services
  • Understand exemplary system function's interface
  • Understand and use classic notions and algorithms
  • Pass arguments by reference
  • Understand the concept of overloading function
  • Use functions to modify their arguments
  • Use Standard Library functions
  • Understand the more complex use of vectors
  • Understand the concept of pseudorandom numbers generation and use
  • Assign portions of data with new and dispose of it with the delete operators
  • Understand and explain the concept of dynamic data collection

After completing this module, the student will be able to:

  • Create 2-dimensional arrays
  • Access 2-dimensional arrays
  • Create variable-length arrays
  • Understand the quirks of comparing floating-point values
  • Understand the ways to mitigate the problem of comparing said values
  • Understand and use the basics of string and text manipulation
  • Work with multiple strings to combine into a single result
  • Read data in a specified format
  • Understand and implement more advanced text analysis and processing techniques
  • Use advanced text search strategies and ideas
  • Solve problems with manipulating free-form text
  • Understand the concept of validating text values based on different text characteristics
  • Understand the limitations of C++ standard integer types
  • Understand the idea of text template and template filling

After completing this module, the student will be able to:

  • Implement multiple classes with the same interface
  • Understand the concept of polymorphism
  • Use polymorphism in real programs
  • Use virtual functions to define desired interfaces to be fulfilled by objects
  • Use objects through interfaces instead of concrete implementations
  • Implement interfaces according to specifications
  • Compose behaviour of several objects into a single interface implementation
  • Model real-world entities in C++
  • Use objects and classes in C++ in a more advanced way
  • Verify user input
  • Implement useful and informative data presentation techniques
Plans
Blended E-learning / face-to-face classroom tutor support.
In addition to the e-learning facility open to the students, IMIT tutors give classroom training support to the trainees on an agreed time table.
Duration
5 months
Fees
Description Amount
IMIT Registration fee XAF 25,000
Fees covering the e-learning facility and face-to-face classroom tutor support. XAF 350,000
Current Sessions
Title Start date Status
Admissions are open always. The e-learning resources are made available to the trainee upon payment of the training fee. Face-to-face classroom tutor support starts in the month following the month in which the trainee first had access to the e-learning resources. Opened Apply
Self study by E-learning
Students study at their convenience remotely without instructor classroom face-to face support. They do practical exercises, take assessments also and end-of-chapter assessments online as well.
Duration
At least 70 hours
Fees
Description Amount
Fee for course delivery by e-learning XAF 100,000
Current Sessions
Title Start date Status
Training by e-learning is available throughout the year. Opened Apply
Blended E-learning and Classroom studies
Trainees have access to online course materials, and also have face-to-face classroom training sessions to boost their e-learning
Duration
Fees
Description Amount
Registration to IMIT XAF 25,000
Fee for blended e-learning and classroom tuition XAF 350,000
Current Sessions
There is no new session right now, we should schedule one shortly, please check again later