Skip to content

PaszaVonPomiot/training_python_oop

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

37 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Introduction to Object Oriented Programming in Python

Objective

Provide a theoretical and practical introduction to OOP in Python for programmers that are new o Object Oriented landscape and for those that wish to understand it better.

Requirements

  • Basic knowledge of Python - syntax, keywords, built-in data types, creating variables, writing nd invoking simple functions, using Python console, executing Python script
  • Installed Python 3.10+ and IDE eg. VS Code, PyCharm
  • Office presence
  • (optional) Jupyter Notbooks

Agenda

  1. Introduction
    • prior knowledge
    • basics
    • class
    • object / instance
  2. Pillars of Object Oriented Programming
    • Encapsulation
      • class / instance attributes
      • bound / class / static methods
      • class initialization
      • information hiding
    • Inheritance
      • inheritance and relationships
      • multiple inheritance (MRO)
      • mixin
      • composition
    • Polymorphism
      • method overriding (super)
      • method overloading (dispatch)
      • callable
      • iteratable
      • subscriptable
    • Abstraction
      • abstract classes
      • abstract methods
      • abstract property
  3. Design considerations
    • Cohesion
    • Coupling

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published