Khufu: Object-Oriented Programming using C++#

Welcome to the first edition of Khufu: Object-Oriented Programming using C++ book. This textbook is a successor of Snefru: Learning Programming with C.

This textbook only has exercise questions. It is tailored for students taking ECE 244: Programming Fundamentals at the University of Toronto, where the foundations of Object-Oriented Programming (OOP) using C++ programming language are discussed.

Authors: The exercises in this book are either taken from past exams in ECE 244 or designed by Salma Emara. This resource is maintained by Salma Emara.

Why Snefru and Khufu?

Snefru was a Pharaoh who ruled ancient Egypt during the Fourth Dynasty of the Old Kingdom, around 2600 BCE. Before his time, Egyptians primarily built step pyramids. Snefru led the construction of a transitional form, the Bent Pyramid, which starts at a 54-degree inclination but changes to a 43-degree angle halfway up, giving it a “bent” appearance. This alteration is believed to have been made during construction to prevent collapse, showcasing an iterative, learning-by-doing approach.

Gaining from this experience, Snefru then led the construction of the Red Pyramid, Egypt’s first successful “true pyramid” with smooth, straight sides. Each of these pyramids represented evolutionary steps in pyramid design, which were foundational for his son, Khufu, who went on to lead the construction of the Great Pyramid of Giza, the oldest of the Seven Wonders of the World.

Just as pyramid design in Snefru’s and Khufu’s eras was an iterative process marked by trial and error, learning programming follows a similar path. Without iteratively learning from your mistakes and experiences, progress cannot be made. This is the core message these books aim to impart to beginners in programming. Enjoy your journey of learning!

Copyright 2023 Salma Emara. Released under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.

Creative Commons License