CPA: Programming Essentials in C++

Descripción

Target Audience

The  CPA:  Programming  Essentials  in  C++  (2.0)  curriculum  (short:  C++  Essentials)  is designed for students with little or no prior knowledge of programming; students of K12 program, secondary school, college, university, vocational school, and simply anyone interested in learning the fundamentals of programming using the C++ language.

Prerequisites

There are no prerequisites for this course. The only preliminary requirement is the ability to use a personal computer and basic knowledge in mathematics (e.g., basic arithmetic operations such as counting, addition, subtraction, multiplication, division, and exponentiation; order of operations, and numeral systems).

Industry Certification

The CPA: Programming Essentials in C++ (2.0) curriculum helps students prepare for the CPE – C++ Certified Entry-Level Programmer (C++ Essentials Part 1 – CPPE1: Modules 1-4) and CPA – C++ Certified Associate Programmer (C++ Essentials Part 2 – CPPE2: Modules 1- 4) certification exams:

CPE – C++ Certified Entry-Level Programmer certification shows that you are familiar with universal computer programming concepts like compilation, variables, data types, typecasting, operators, conditional execution, loops, arrays, pointers, structures, and the runtime environment. CPE certification is an interim step to the CPA – C++ Certified Associate Programmer certification and the starting point to launch a career in software development, low-level and middle-level programming, C++ programming, and related technologies. Becoming CPE certified will help you stand out from other candidates and get your foot in the door.

CPA – C++ Certified Associate Programmer is a professional certification that measures the ability to accomplish coding tasks related to the basics of programming in the C++ language and the fundamental notions and techniques used in object-oriented programming. CPA – C++ Certified Associate Programmer certification shows that you are familiar with the universal concepts of computer programming; the syntax and semantics of the C++ language as well as basic data types offered by the language; the principles of the object-oriented model and its implementation in the C++ language; the means useful in resolving typical implementation problems with the help of standard C++ language libraries.

Curriculum Description

This course covers all the most important universal aspects of computer programming, the basics of programming in the C++ programming language, as well as the fundamental concepts and techniques used in object-oriented programming. The course starts with some universal basics, without focusing on the objective approach, and gradually extends to the more advanced issues the student will encounter when using the OOP approach.

The course is broken down into two parts (CPPE1 and CPPE2), each divided into four modules. Each student has access to hands-on practice materials, quizzes and assessments to learn how to utilize the skills and knowledge gained on the course and interact with some real-life programming tasks and situations.

Curriculum Objectives

The aim of the course is to familiarize the student with the universal concepts of computer programming, present the syntax, semantics and basic data types of the C++ language, discuss the principles of the object-oriented model and its implementation in the C++ language, and demonstrate the means to resolve typical implementation problems with the help of standard C++ language libraries.

During the course, students will cover the following study material:

  • Introduction to compiling and software development;
  • Basic scalar data types, operators, flow control, streamed input/output, conversions;
  • Declaring, defining and invoking functions, function overloading;
  • Data aggregates;
  • Strings processing, exceptions handling, namespaces;
  • Object-oriented approach and its vocabulary;
  • Classes and objects, class hierarchy and inheritance;
  • Defining overloaded operators, self-defined operators, exceptions;
  • Fundamentals of STL.

The student who completes C++ Essential Part 1 (CPPE1):

  • knows the basics of the C++ data types system and is able to choose a type adequate to their needs;
  • thinks algorithmically and can analyze a problem using programmatic and conceptual apparatus;
  • can design, develop, and improve simple C++ procedural programs;
  • can choose a data type adequate to the problem being solved and use suitable flow control means;
  • understands a programmer's work in the software development process and the role of fundamental development tools;
  • knows how a program is compiled and executed in an actual computer environment;
  • can create and develop their own programming portfolio.

The student who completes C++ Essential Part 2 (CPPE2):

  • is familiar with the fundamental concepts of OOP and their C++ implementation;
  • thinks algorithmically and can analyze and model a problem using an objective conceptual apparatus;
  • successfully develops and builds class hierarchies adequate to the problem being solved;
  • designs, develops, and improves C++ programs using classes and objects, and constructs suitable inheritance paths;
  • understands a programmer's work in the software development process and the role of fundamental development tools;
  • knows the object life cycle and understands how classes and objects function in an actual computer environment;
  • can create and develop their own programming portfolio.

Programa
Module 1 - Introduction to Programming in C++:
Covers the basics of C++, including the difference between natural and programming languages, the structure of a program, and how compilers work. Students write their first program ("Hello World") and learn about data types (integers, floats, characters), variables, arithmetic operators, and control flow with if-else. It also covers input/output using cin and cout, and type conversions using static_cast.

Module 2 - Advanced Flow Control and Data Aggregates:
Expands on flow control with else clauses, nested conditionals, and switch. Introduces loops (while, do, for) and logical and bitwise operators. It delves into data types such as long, unsigned, and double, and explores data structures like vectors (including their declaration and use) and structures (declaration, initialization, and use, even within vectors).


CPPE1: Module 3 - Extending Expressive Power: Pointers, Functions, and Memory
Focuses on pointers and functions in C++. It covers pointer declaration, initialization, and operations like referencing, dereferencing, and pointer arithmetic. The module introduces functions for code organization, explaining declaration, parameters, return types, and different passing methods (by value, reference, pointer). It also covers default arguments, inline/overloaded functions, the ternary operator, Bubble Sort, and dynamic memory management with new and delete.

CPPE1: Module 4 - Accessing Different Kinds of Data
Explores arrays of pointers, type conversions (implicit vs. explicit casting), and their impact on precision. The module delves into C++ strings, including declaration, common operations (reading, comparing, appending), and string member functions. It also introduces namespaces and explains their use, including the difference between named and anonymous namespaces.



Detalles
  1. Sigla: PC-CPA
  2. Inicio: 4/11/2023
  3. Fin: 29/01/2024
  4. Duración:
  5. Organiza: 464 - PROCOMER
  6. Cupos Disponibles: 54 / 100

* Este curso no se encuentra disponible para registro.