cart-icn

You already have a course in your cart

You can only add one course to your cart at a time! By adding this course, you will replace the existing course from your cart. How would you like to proceed?

Back-End Foundations: C++ and Python Course

Train to become a job-ready developer with C++ training to build strong programming fundamentals and get hands-on experience using AI tools to code smarter and faster. Next, continue into Python to learn how to create real programs and use AI-assisted coding, including tools like ChatGPT, to boost your productivity.

GES3137-Back-End-Fndtns-C-PP-Python
$2,939.00 (CAD)

currency dollar icon
Payment & Funding: view your options
arrow right icon
Have a question?We're here to help
Back
customer service representatives

Explore your payments options

When it comes to paying for your course-you've got options! Schedule a call with us and we can help you find the payment method that works best for you.
credit card icon

Credit Card: Visa, Mastercard, Discover or American Express card Most Popular

affirm icon Affirm:

building icon

Workforce Funding: Learn about eligibility

close icon

Overview

Objective

Outline

Course Activities

  • Quizzes: 31
  • Assignments: 85
  • Projects: 2
  • Exams: 2

Part 1 - Introduction to Python 3 Training

Lesson 1: Python Basics (Quizzes: 1, Assignments: 5)

  • Getting Familiar with the Terminal
  • Running Python
  • Running a Python File
  • Literals, Comments, and Data Types
  • Variables
  • Constants and Deleting Variables
  • Writing a Python Module
  • print() Function
  • Collecting User Input
  • Reading from and Writing to Files

Lesson 2: Functions and Modules (Quizzes: 1, Assignments: 2)

  • Defining Functions
  • Variable Scope
  • Global Variables
  • Function Parameters
  • Default Values
  • Returning Values
  • Importing Modules
  • Methods vs. Functions

Lesson 3: Math (Quizzes: 1, Assignments: 3)

  • Arithmetic Operators
  • Assignment Operators
  • Precedence of Operations
  • Built-in Math Functions
  • The math Module
  • The random Module

Lesson 4: Python Strings (Quizzes: 1, Assignments: 5)

  • Quotation Marks and Special Characters
  • String Indexing
  • Slicing Strings
  • Concatenation and Repetition
  • Combining Concatenation and Repetition
  • Python Strings are Immutable
  • Common String Methods
  • String Formatting
  • Formatted String Literals (f-strings)
  • Built-in String Functions

Lesson 5: Iterables: Sequences, Dictionaries, and Sets (Quizzes: 1, Assignments: 4)

  • Definitions
  • Sequences
  • Lists
  • Sequences and Random
  • Tuples
  • Ranges
  • Converting Sequences to Lists
  • Indexing
  • Slicing
  • min(), max(), and sum()
  • Converting between Sequences and Strings
  • Unpacking Sequences
  • Dictionaries
  • The len() Function
  • Sets
  • *args and **kwargs

Lesson 6: Virtual Environments, Packages, and pip (Quizzes: 1, Assignments: 2)

  • Packages with pip

Lesson 7: Flow Control (Quizzes: 1, Assignments: 3)

  • Conditional Statements
  • Compound Conditions
  • The is and is not Operators
  • all() and any() and the Ternary Operator
  • In Between
  • Loops in Python
  • break and continue
  • Looping through Lines in a File
  • The else Clause in Loops
  • The enumerate() Function
  • Generators
  • List Comprehensions

Lesson 8: Exception Handling (Quizzes: 1, Assignments: 2)

  • Exception Basics
  • Generic Exceptions
  • The else and finally Clauses
  • Using Exceptions for Flow Control
  • Raising Your Own Exceptions

Lesson 9: Python Dates and Times (Quizzes: 1, Assignments: 2)

  • Understanding Time
  • The time Module
  • Time Structures
  • Times as Strings
  • Time and Formatted Strings
  • Pausing Execution with time.sleep()
  • The datetime Module
  • datetime.datetime Objects
  • datetime.timedelta Objects

Lesson 10: File Processing (Quizzes: 1, Assignments: 4)

  • Paths
  • The pathlib Module
  • Opening Files
  • Writing to Files
  • Path Methods for Reading and Writing Files
  • Making Directories
  • Deleting Files and Directories
  • Renaming Files and Directories
  • The os Module
  • A Better Way to Open Files

Lesson 11: PEP8 and Pylint (Quizzes: 1, Assignments: 0)

  • PEP8
  • Pylint

Part 2 - Advanced Python 3 Training

Lesson 1: Advanced Python Concepts (Quizzes: 1, Assignments: 5)

  • Lambda Functions
  • Advanced List Comprehensions
  • Collections Module
  • Counters
  • Mapping and Filtering
  • Mutable and Immutable Built-in Objects
  • Sorting
  • Sorting Sequences of Sequences
  • Creating a Dictionary from Two Sequences
  • Unpacking Sequences in Function Calls
  • Modules and Packages

Lesson 2: Regular Expressions (Quizzes: 1, Assignments: 1)

  • Regular Expression Tester
  • Regular Expression Syntax
  • Python's Handling of Regular Expressions

Lesson 3: Working with Data (Quizzes: 1, Assignments: 6)

  • Virtual Environment
  • Relational Databases
  • Passing Parameters
  • SQLite
  • SQLite Database in Memory
  • Drivers for Other Databases
  • CSV
  • Creating a New CSV File
  • Getting Data from the Web
  • XML
  • JSON

Lesson 4: Testing and Debugging (Quizzes: 1, Assignments: 2)

  • Testing for Performance
  • The unittest Module
  • Special unittest.TestCase Methods

Lesson 5: Classes and Objects (Quizzes: 1, Assignments: 5)

  • Attributes
  • Behaviors
  • Classes vs. Objects
  • Attributes and Methods
  • Private Attributes
  • Properties
  • Objects that Track their Own History
  • Documenting Classes
  • Inheritance
  • Extending a Class Method
  • Static Methods
  • Class Attributes and Methods
  • Abstract Classes and Methods
  • Understanding Decorators

Part 3 - Python Data Analysis with JupyterLab Training

Lesson 1: JupyterLab (Quizzes: 1, Assignments: 5)

  • Jupyter Notebook Modes
  • Markdown
  • Magic Commands
  • Getting Help

Lesson 2: NumPy (Quizzes: 1, Assignments: 3)

  • NumPy Arrays
  • Multi-dimensional Arrays
  • More on Arrays
  • Using Boolean Arrays to Get New Arrays
  • Random Number Generation
  • Exploring NumPy Further

Lesson 3: pandas (Quizzes: 1, Assignments: 5, Projects: 1)

  • Getting Started with pandas
  • Introduction to Series
  • np.nan
  • Accessing Elements in a Series
  • Series Alignment
  • Comparing One Series with Another
  • Element-wise Operations and the apply() Method
  • Series: A More Practical Example
  • Introduction to DataFrames
  • Creating a DataFrame using Existing Series as Rows
  • Creating a DataFrame using Existing Series as Columns
  • Creating a DataFrame from a CSV
  • Exploring a DataFrame
  • Changing Values
  • Getting Rows
  • Combining Row and Column Selection
  • Boolean Selection
  • Pivoting DataFrames
  • Be careful using properties!
  • Plotting with matplotlib
  • Other Kinds of Plots

Python Programmer Final Exam

Part 4 - Introduction to C++ Programming

Lesson 1: Getting Started with Modern C++ (Quizzes: 1, Assignments: 1)

  • History and Evolution of C++
  • Procedural and Object-Oriented Features
  • Program Structure Basics

Lesson 2: Core Syntax and Control Flow (Quizzes: 1, Assignments: 1)

  • Variables, Constants, and Type Deduction
  • Operators and Expressions
  • Basic Input and Output
  • Modern Output: std::format
  • Conditionals: if and switch
  • Loops: for, while, do-while

Lesson 3: Functions and Functional Features (Quizzes: 1, Assignments: 1)

  • Defining and Using Functions
  • Overloading and Default Parameters
  • Scope and Lifetime
  • Lambdas and Generics
  • consteval and constexpr
  • Error Handling Techniques

Lesson 4: Arrays and Strings (Quizzes: 1, Assignments: 1)

  • C-style Arrays and Strings Overview
  • Modern Arrays: std::array
  • Strings with std::string and std::string_view
  • String Formatting with std::format

Lesson 5: Memory and Pointers (Quizzes: 1, Assignments: 1)

  • Basics of Pointers and Addresses
  • Pointer Arithmetic
  • Dynamic Memory: new and delete
  • Smart Pointers: unique_ptr, shared_ptr, weak_ptr
  • Pointers vs. References

Lesson 6: Structured Programming (Quizzes: 1, Assignments: 1)

  • User-Defined Types: struct
  • typedef and enum
  • Passing Structs to Functions

Lesson 7: Standard Data Structures (Quizzes: 1, Assignments: 1)

  • Vectors and Lists
  • Stacks, Queues, and Deques
  • Maps and Sets
  • Unordered Containers
  • Common Algorithms: sort, find, Ranges

Lesson 8: Object-Oriented Programming (Quizzes: 1, Assignments: 1)

  • OOP Principles: Encapsulation, Inheritance, Polymorphism
  • Class Definitions
  • Member Variables and Functions
  • Constructors and Destructors
  • Access Control
  • Function and Operator Overloading

Lesson 9: Inheritance and Polymorphism (Quizzes: 1, Assignments: 1)

  • Base and Derived Classes
  • Inheritance Types
  • Virtual Functions and Dynamic Dispatch
  • Abstract Classes and Interfaces

Lesson 10: File I/O (Quizzes: 1, Assignments: 1)

  • File Streams and Concepts
  • Reading Files: ifstream
  • Writing Files: ofstream
  • File Modes and Error Handling
  • Working with Structured Data Files

Part 5 - AI-Assisted Python and C++ Development

Lesson 1: Overview of Artificial Intelligence and Large Language Models (Quizzes: 1, Assignments: 1)

  • Overview of Artificial Intelligence and Large Language Models
  • Large Language Models: Challenges and Risks
  • ChatGPT Overview and Use Cases
  • How ChatGPT Helps Developers Write Code
  • Prepping a ChatGPT Thread
  • The Role of AI in Programming
  • Getting Started with ChatGPT

Lesson 2: AI-Assisted Python (Assignments: 5)

  • Setting Up and Using Google Colab
  • Writing a Python Module
  • Debugging and Optimizing Python
  • Making Use of an API
  • Creating a Python Script with File I/O
  • Recommended Practice

Lesson 3: AI-Assisted C++ (Quizzes: 1, Assignments: 5, Projects: 1)

  • Writing a C++ Program with AI Assistance
  • Debugging and Optimizing C++
  • Using AI to Understand and Explore C++ Code
  • Creating a C++ Program with File I/O
  • Recommended Practice

C++ Final Exam

Requirements

Prerequisites

You've got questions.
We're here to help.

Our highly knowledgeable Enrollment Specialists will answer any questions you might have about the course and payment options.

REQUEST INFO

Instructor

FAQs

You've got questions.
We're here to help.

Our highly knowledgeable Enrollment Specialists will answer any questions you might have about the course and payment options.

REQUEST INFO