All courses

Programming

Object-Oriented Programming with Python

Structure larger Python programs using object-oriented techniques and build code that is easier to understand and extend.

3 days Intermediate Tailored to your team

Overview

Being proficient in object-oriented programming is an essential skill as you build more complex programs or move your data models to a production environment.

What you’ll need

  • Laptop and headphones and microphone
  • Microsoft Office (Word, PowerPoint, Excel)
  • Google Chrome or Microsoft Edge
  • We will provide browser-based tools for programming Python (nothing to install)

Course topics

  • Procedural Python
    • A quick refresher of procedural Python programming using functions
    • Managing code that spans multiple files
  • Managing data with Collection objects
    • Lists
    • Dictionaries
    • Tuples
    • Sets
  • Classes and Objects
    • Concepts behind object-oriented programming
    • When it’s appropriate to use Object-Oriented Programming
    • Build simple applications that utilise classes, objects, methods and properties
  • Connecting to a Database
    • In this module, we’ll build an OOP Python program that connects to a database, and performs CRUD operations (Create, Read, Update, Delete)
  • Consuming an API
    • In this module, we’ll write an OOP Python program that consumes a simple API
  • Error Handling
    • Learn how to catch errors and deal with them gracefully
  • Unit Tests
    • This module teaches the concepts behind Test Driven Development, using Python and OOP
    • Learn how to write unit tests for your Python programs
  • Deploying code and Managing Virtual Environments
    • Managing dependencies and preparing for deployment - It’s one thing to build a Python program that runs on your own computer, quite another to ensure that the same code works after deployment to a server
    • Learn how to set up virtual environments to manage libraries that have been installed using pip
  • The basics of source Control using Git
    • Create a repository and use basic git commands such as git add, commit, push and pull.
    • Be familiar with common git workflows.
  • Code Kata - an opportunity to reflect on how you write code, and to look for ways to improve.
    • You’ll be given a challenge to complete
    • Starting with a clean slate, you’ll attempt the same challenge again
    • Reflect on how you were able to improve your code between attempts
    • Present your code to your team, and discuss the improvements that you made. Compare and contrast different approaches taken by your colleagues