ACS 1111: Object Oriented Programming

Course Description

This course reinforces the fundamentals of programming including variables, data types, control flow, conditionals, loops, lists, dictionaries, functions, and introduces object-oriented programming. Students will master top-level concepts in software development including writing pseudocode, using functions to process input into output, technical project planning, and diagramming. The course will also cover how computers work, from components and layout to memory and machine code instructions.

Prerequisites

  • ACS 1100: Introduction to Programming

Course Specifics

Course Delivery: Online | 8 weeks | 14 sessions

Course Credits: 3 units

Learning Objectives

Students by the end of the course will be able to ...

  1. Implement and apply foundational object oriented techniques and best practices including encapsulation, composition, and inheritance
  2. Translate user stories and requirements into a program
  3. Practice core programming concepts including data structures, control flow, repetition, and functions
  4. Implement programming best practices, debugging, and testing in Python.

Schedule

Schedule: Monday and Wednesday, 1:00 PM to 3:45 PM
Course Dates: October 18 though December 7, 2023

Class Date Topics Assignments
1 Wed, Oct 18 Scope -
2 Mon, Oct 23 Objects & Encapsulation -
3 Wed, Oct 25 Attributes & Methods Bank Account Due
4 Mon, Oct 30 Inheritance -
5 Wed, Nov 1 Access Modifiers, Composition & Design -
6 Mon, Nov 6 Pygame & Pygame Tutorial Super Hero Dueler Due
7 Wed, Nov 8 Polymorphism -
8 Mon, Nov 13 Inheriting from Built In's and Overloading -
9 Wed, Nov 15 Function Arguments and Overloading -
10 Mon, Nov 20 Abstract Classes & Static/Class Methods Pygame Tutorial Due
11 Wed, Nov 22 NO CLASS: Thanksgiving Break -
12 Mon, Nov 27 Decorators -
13 Wed, Nov 29 Multiple Inheritance & Mix-ins -
14 Mon, Dec 4 (Study Guide) Final Assessment
15 Wed, Dec 6 - Herd Immunity Due

Assignment Submissions

All assignments will be submitted on Gradescope. Your instructor will provide access to Gradescope after introducting the first assignment.

Evaluation

To pass this course you must meet the following requirements:

  • Complete all in-class quizzes. If a quiz is missing, you will need to request a retake/extension.
  • Pass all assignments and projects with a score 70% or higher.
  • All assignments are scored according to the associated assignment rubric.
  • Actively participate in class and abide by the attendance policy.
  • Make up all classwork from all absences.

How to Get Help

TA and Instructor Office Hours

Check the calendar for this term's particular TAs and Instructor.

Class Recordings

All class recordings will be available here no later than 24 hours after the class session. For privacy reasons, please do not share the recordings outside of the ACS student body.

Course Policies

View all course policies here