The rest of the chapters are coming soon!

This content was thoughtfully created and tailored for CS247 — Software Engineering Principles, for Software Engineering students at the University of Waterloo.

It features a collection of uniquely designed practice problems and in-depth explanations aimed at supporting students in mastering course concepts.

Table of Contents
  1. Ch. 01ADT Design
  2. Ch. 02Values, Entity, and Information Hiding
  3. Ch. 03Special Member Functions
  4. Ch. 04Modules
  5. Ch. 05Interface Specifications
  6. Ch. 06Assertions, Exceptions, and Smart Pointers