Classes - OOP - Object Oriented Programming

  1. Why Object Oriented Programming?
  2. Generic Object Oriented Programming terms
  3. OOP in Python
  4. OOP in Python (numbers, strings, lists)
  5. OOP in Python (argparse)
  6. Create a class
  7. Create instance of class
  8. Import module containing class
  9. Import class from module
  10. Initialize instance (not a constructor)
  11. Self is the instance
  12. Init uses same name as attribute and getters
  13. Initialize an instance - (not a constructor), attributes and getters
  14. Setters - assign to the attributes
  15. Attributes are not special
  16. Private attributes
  17. Methods
  18. Inheritance
  19. Inheritance - another level
  20. Modes of method inheritance
  21. Modes of method inheritance - implicit
  22. Modes of method inheritance - override
  23. Modes of method inheritance - extend
  24. Modes of method inheritance - delegate - provide
  25. Composition - Line
  26. Composition - Line with type annotation
  27. Hidden attributes
  28. Hidden attributes in a subclass
  29. Some comments
  30. Exercise: Add move_rad to based on radians
  31. Exercise: Improve previous examples
  32. Exercise: Polygon
  33. Exercise: Number
  34. Exercise: Library
  35. Exercise: Bookexchange
  36. Exercise: Represent turtle graphics
  37. Solution - Polygon