Programming Abstractions

Course Description

Abstraction and its relation to programming. Software engineering principles of data abstraction and modularity. Object-oriented programming, fundamental data structures (such as stacks, queues, sets) and data-directed design. Recursion and recursive data structures (linked lists, trees, graphs). Introduction to time and space complexity analysis. Uses the programming language C++ covering its basic facilities.

Course Details

  • Class Number: 20906
  • 2021 Schedule: MoTuWeTh 2:00PM - 3:00PM PDT
  • Discussion Section Required: Course includes a required discussion section. Students sign up on the first day of class. Multiple options will be available.
  • Online Format - Synchronous: This course is taught in real-time, and students are expected to attend virtual sessions at specific times during the week.


CS 106A or equivalent

Group 3GroupGroup 2