Classes and objects are central to how Python works. This course will deepen your knowledge of object-oriented programming in Python, expanding on concepts you're familiar with and introducing new tools that will broaden you Python design palette.
Classes are crucial tool in Python for organizing data and behavior. In this course, Core Python: Classes and object-orientation, you’ll learn how to apply fundamental principles of Object-Oriented Programming (OOP) in Python. First, you’ll learn how to distinguish between classes and instances, and define attributes on both. Next, you’ll explore properties using them to encapsulate state. Finally, you’ll discover how to combine classes using inheritance and multiple inheritance, and have these classes collaborate in ways which are distinctive to the Python language. When you’re finished with this course, the will have the skills and knowledge of the core Python language needed to develop larger and robust software systems.
Austin is a founding director of Sixty North, a software consulting,
training, and application development company. He's a native of Texas
but currently lives in Norway where he writes software, runs a local
software interest group, and presents and teaches whenever he can.
Robert Smallshire is a founding director of Sixty North, a software product and consulting business in based in Norway. He has held several senior software architecture and technical management roles, and he is a regular conference speaker. Python is his weapon of choice.
Course Overview Hi everyone. I'm Robert Smallshire, and I'm Austin Bingham, and we're here to welcome you to our course, Core Python: Classes and Object‑oriented Programming. ‑We're both founders and principle consultants at Sixty North. ‑Python is, at its core, an object‑oriented language. It's no stretch to claim that everything in Python is an object, and in turn, every object is of a particular class. And in this course, you'll learn intermediate‑level techniques for creating, representing, combining, and manipulating classes in Python. ‑Some of the major topics we'll cover include defining per class rather than per object data and methods, using properties for graceful upgrade from plain attributes, how to represent your objects as strings for various types of user, method resolution and how this relates to multiple inheritance, transforming classes with class decorators, creating simple data classes. ‑By the end of this course, you'll know how to create idiomatic Python classes that work the way most experienced Python programmers expect, and you'll have a deeper appreciation of how Python classes can be used to encapsulate data and provide rich behaviors. ‑Before beginning this course, students should be familiar with the essentials of the Python language, including functions, classes, and modules. This course assumes knowledge of these topics, equivalent what's presented in Core Python: Getting Started and Core Python: Functions and Functional Programming. ‑We hope you'll join us on this journey to learn more about Python with the Core Python: Classes and Object‑oriented Programming course, at Pluralsight.