We're sorry but this app doesn't work properly without JavaScript enabled. Please enable it to continue.

Programming 3 - Object-Oriented Python

A comprehensive third-semester programming course covering object-oriented programming and Python game development

Send an email to "hello@boot.dev" to inquire about pricing for your school or university.

Students will master object-oriented programming principles and optionally build a real arcade game. Prerequisites: Programming 1 & 2, or solid Python fundamentals and basic terminal skills.

80
Hands-on Lessons
10
Chapters
24
Hours of Content

Object-Oriented Design

  • Master object-oriented design principles
  • Write clean, maintainable code
  • Understand classes and encapsulation
  • Apply abstraction to complex problems

Advanced Concepts & Projects

  • Implement inheritance and polymorphism
  • Build a complete game with Pygame
  • Apply OOP to real-world problems
  • Create portfolio-worthy projects

Flexible Semester Planning

Flexible pacing designed to fit your academic calendar, and easily customized to your needs

WeeksTopicsChaptersLessons
1Clean Code16
2-3Classes212
4Encapsulation38
5Abstraction47
6-7Inheritance515
8-9Polymorphism613
10Pygame73
11Gameloop84
12Player95
13Asteroids107
14Final Game Polish--

Complete Chapter Breakdown

80 interactive lessons across 10 chapters

Core OOP Concepts (All Students)

Chapter 1: Clean Code

Understand why we have programming paradigms in the first place, and how they help us write more maintainable code

6
lessons

Chapter 2: Classes

Learn about classes and objects, and how OOP differs from a functional programming paradigm.

12
lessons

Chapter 3: Encapsulation

Learn how to write cleaner code by encapsulating data and methods.

8
lessons

Chapter 4: Abstraction

Abstraction is a powerful tool that will make your code more robust and reusable.

7
lessons

Chapter 5: Inheritance

The crux of OOP is the ability to inherit data and behaviors from other classes

15
lessons

Chapter 6: Polymorphism

Polymorphism is one of the best ideas we've had as developers, learn how it works.

13
lessons
Asteroids Game Project

Chapter 7: Pygame

Setup and install Pygame.

3
lessons

Chapter 8: Gameloop

Write a gameloop that renders the game at 60 frames per second.

4
lessons

Chapter 9: Player

Create a Player class and implement movement.

5
lessons

Chapter 10: Asteroids

Add asteroids for the player to avoid.

7
lessons