• University of Michigan logo

The Power of Object-Oriented Programming

Extend your Python knowledge and programming skills with this engaging object-oriented programming course.

502 enrolled on this course

Two cartoon people assembling a pyramid of playing cards with a yellow background.
  • Duration

    4 weeks
  • Weekly study

    4 hours

Boost your coding and programming abilities

Object-oriented programming (or OOP) is a model that allows you to organise data by classes and objects using attributes. It’s also one of the most popular types of programming, making it an essential skill to help you better communicate with programmers in your organisation.

On this four-week course from the University of Michigan, you will expand your knowledge of OOP and learn how to write programs with objects from classes and how to write your own classes. You’ll also gain confidence as you learn to understand and modify larger object-oriented programs.

Apply your knowledge of OOP principles with creative programming projects

This course has a highly stimulating and creative approach to OOP. This includes activities like creating an image collage as well as a model of a real-world object, such as a Magic 8-Ball.

Through these activities, you’ll put your programming knowledge into practice using fun and innovative methods.

Leverage collaboration and social learning

This course will allow you to communicate and work alongside other learners along the journey.

With this support, you’ll be able to use knowledge-sharing and teamwork to broaden your understanding and explore the possibilities of OOP together.

Learn with the experts at the University of Michigan

Barbara Ericson is an Assistant Professor in the School of Information at the University of Michigan, and an award-winning author of computing curricula.

With a wealth of knowledge in object-oriented programming and experience in creating exciting educational content, Barbara Ericson and the University of Michigan will help you develop your object-oriented programming skills.

What topics will you cover?

  • How to write a class with object attributes and methods.
  • How to analyze a domain to determine the classes, attributes, and methods.
  • How to read UML class diagrams.
  • How to write programs with several classes that interact.
  • How to write a class that inherits from another class and override an inherited method.

Learning on this course

On every step of the course you can meet other learners, share your ideas and join in with active discussions in the comments.

What will you achieve?

By the end of the course, you‘ll be able to...

  • Code a class with object attributes and methods.
  • Assess a domain to determine the classes, attributes, and methods.
  • Evaluate UML class diagrams.
  • Code programs with several classes that interact.
  • Design a class that inherits from another class and override an inherited method.

Who is the course for?

This course is designed for learners interested in extending their knowledge of Python.

It will also be helpful to those wishing to learn a textual programming language or for professionals who work and communicate with programmers but don’t use Python.

What software or tools do you need?

To fully participate in this course you will need to access the third-party Runestone ebook (registration required).

Who will you learn with?

I am an Assistant Professor in the School of Information at the University of Michigan. I study how to improve both computing education and the diversity of students in computing.

Who developed the course?

University of Michigan

As the #1 public research university in the United States, U-M has been a leader in research, learning, and teaching for more than 200 years, with 102 Grad programs in the top 10 — U.S. News & World Report (2019).

  • Established

    1817
  • Location

    Ann Arbor, Michigan, USA
  • World ranking

    Top 30Source: Times Higher Education World University Rankings 2020

Learning on FutureLearn

Your learning, your rules

  • Courses are split into weeks, activities, and steps to help you keep track of your learning
  • Learn through a mix of bite-sized videos, long- and short-form articles, audio, and practical activities
  • Stay motivated by using the Progress page to keep track of your step completion and assessment scores

Join a global classroom

  • Experience the power of social learning, and get inspired by an international network of learners
  • Share ideas with your peers and course educators on every step of the course
  • Join the conversation by reading, @ing, liking, bookmarking, and replying to comments from others

Map your progress

  • As you work through the course, use notifications and the Progress page to guide your learning
  • Whenever you’re ready, mark each step as complete, you’re in control
  • Complete 90% of course steps and all of the assessments to earn your certificate

Want to know more about learning on FutureLearn? Using FutureLearn

Do you know someone who'd love this course? Tell them about it...