The Art of Subclassing


[EuroPython 2011] Raymond Hettinger - 24 June 2011 in "Track Spaghetti"



All problems have simple, easy-to-understand, logical wrong answers. Subclassing in Python is no exception. Avoid the common pitfalls and learn everything you need to know about how subclass in Python.

  • Overriding and extending

  • Calling your parents

  • The ellipse / circle problem - what does a subclass mean?

  • Liskov Substitution Principle

  • Open Closed Principle

  • The facts of life when subclassing builtin types

  • How to Implement Cooperative Multiple Inheritance

  • A example of perfect and simple python diamond

  • Beware the Concrete C API