Object-Oriented Programming and GUI with Python (Coursera)

Object-Oriented Programming and GUI with Python (Coursera)

In this course we will implement object-oriented programming into Python programs; outline the importance of why and how we use object-oriented programming; and learn how to use inheritance when designing a program. We will also look at how to build a graphical user interface for a basic program.

Class Deals by MOOC List - Click here and see Coursera's Active Discounts, Deals, and Promo Codes.

You do not need programming or computer science experience to learn the material in this course. This course is open to anyone who is interested in learning how to code and write programs in Python. We are very excited that you will be learning with us and hope you enjoy the course!
This course is part of the Python: A Guided Journey from Introduction to Application Specialization.

What you'll learn
Students will understand why object oriented programming is used and how to create a graphical user interface.

Syllabus

Module 1: Object-Oriented Programming with Python
In this module, you will discover object-oriented programming and learn how to implement this practice in Python.

Module 2: Inheritance and Polymorphism
In this module, you will implement inheritance and polymorphism into an application.

Module 3: Programming a Graphical User Interface
In this module, you will build a basic graphical user interface (GUI) that will tie into an application.

Go to Class
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Related Courses

Parallel programming (Scala 2 version) (Coursera) Coursera
École Polytechnique Fédérale de Lausanne

Parallel programming (Scala 2 version) (Coursera)

With every smartphone and computer now boasting multiple processors, the use of functional ideas to facilitate parallel programming is becoming increasingly widespread. In this course, you'll learn the fundamentals of parallel programming, from task parallelism to data parallelism. In particular, you'll see how many familiar ideas from functional programming map perfectly to to the data parallel paradigm. We'll start the nuts and bolts how to effectively parallelize familiar collections operations, and we'll build up to parallel collections, a production-ready data parallel collections library available in the Scala standard library.

Sep 7th 2026
4 Weeks
Computers, Waves, Simulations: A Practical Introduction to Numerical Methods using Python (Coursera) Coursera
Ludwig-Maximilians-Universität München

Computers, Waves, Simulations: A Practical Introduction to Numerical Methods using Python (Coursera)

Interested in learning how to solve partial differential equations with numerical methods and how to turn them into python codes? This course provides you with a basic introduction how to apply methods like the finite-difference method, the pseudospectral method, the linear and spectral element method to the 1D (or 2D) scalar wave equation.

Sep 7th 2026
5-12 Weeks
Programming Languages, Part A (Coursera) Coursera
University of Washington

Programming Languages, Part A (Coursera)

This course is an introduction to the basic concepts of programming languages, with a strong emphasis on functional programming. The course uses the languages ML, Racket, and Ruby as vehicles for teaching the concepts, but the real intent is to teach enough about how any language “fits together” to make you more effective programming in any language -- and in learning new ones.

Sep 7th 2026
5-12 Weeks
Functional Program Design in Scala (Scala 2 version) (Coursera) Coursera
École Polytechnique Fédérale de Lausanne

Functional Program Design in Scala (Scala 2 version) (Coursera)

In this course you will learn how to apply the functional programming style in the design of larger Scala applications. You'll get to know important new functional programming concepts, from lazy evaluation to structuring your libraries using monads. We'll work on larger and more involved examples, from state space exploration to random testing to discrete circuit simulators. You’ll also learn some best practices on how to write good Scala code in the real world. Finally, you will learn how to leverage the ability of the compiler to infer values from types.

Sep 7th 2026
5-12 Weeks
IBM z/OS Rexx Programming (Coursera) Coursera
IBM

IBM z/OS Rexx Programming (Coursera)

This course is designed to teach you the basic skills required to write programs using the REXX language in z/OS. The course covers the TSO extensions to REXX and interaction with other environments such as the MVS console, running REXX in batch jobs, and compiling REXX. A total of 11 hands-on labs on an IBM Z server (via remote Skytap access) are part of this course.

Sep 7th 2026
5-12 Weeks
Programming Reactive Systems (Scala 2 version) (Coursera) Coursera
École Polytechnique Fédérale de Lausanne

Programming Reactive Systems (Scala 2 version) (Coursera)

Reactive programming is a set of techniques for implementing scalable, resilient and responsive systems as per the Reactive Manifesto. Such systems are based on asynchronous message-passing, and their basic building-blocks are event handlers. This course teaches how to implement reactive systems in Scala and Akka by using high-level abstractions, such as actors, asynchronous computations, and reactive streams.

Sep 7th 2026
5-12 Weeks
Introdução ao Desenvolvimento de Aplicativos Android (Coursera) Coursera
Universidade Estadual de Campinas - UNICAMP

Introdução ao Desenvolvimento de Aplicativos Android (Coursera)

Este curso tem como objetivo propiciar um primeiro contato com a Programação para Dispositivos Móveis que operam na plataforma Android. O Android Studio será utilizado como ambiente de desenvolvimento desde o início do curso e você receberá dicas de como obter ajuda quando alguma tarefa estiver consumindo mais tempo do que o necessário. Ao solucionar problemas por conta própria, você irá adquirir a autonomia necessária para concluir projetos de programação.

Sep 7th 2026
5-12 Weeks
Principles of Computing (Part 2) (Coursera) Coursera
Rice University

Principles of Computing (Part 2) (Coursera)

This two-part course introduces the basic mathematical and programming principles that underlie much of Computer Science. Understanding these principles is crucial to the process of creating efficient and well-structured solutions for computational problems. To get hands-on experience working with these concepts, we will use the Python programming language. The main focus of the class will be weekly mini-projects that build upon the mathematical and programming principles that are taught in the class.

Sep 7th 2026
4 Weeks