The Python Object-Oriented Programming 5th Edition

In time for your Holiday Reading. Want guidance on OO design in Python? Want a lot of concrete examples, fully tested?

  • Master OOP fundamentals with hands-on examples and expert insights
  • Learn design patterns and type hinting with real-world Python 3.13 code
  • Develop scalable programs using testing and concurrency best …
more ...

A get_object_size() Function -- Again

BLUF

You rarely need this. Python handles memory management for you. Except in an edge case where you have a lot of objects to work with.

How many is a lot? Enough that your app crashes with MemoryError exception. Or, is consuming so much memory other processes have trouble working …

more ...

A get_object_size() Function [Updated]

BLUF

You rarely need this. Python handles memory management for you. Except in an edge case where you have a lot of objects to work with.

How many is a lot? Enough that your app crashes with MemoryError exception. Or, is consuming so much memory other processes have trouble working …

more ...


OO Design Principles: CUPID

Some quotes to provide context.

"I read several times that ideally I should avoid inheritance with ABCs and if I do, then from a standard class. That is, I should avoid creating a typical base and subclass construct that is used in a strategy pattern, for example."

"If I look …

more ...

OO Design Principles: SOLID

Some quotes to provide context.

"I read several times that ideally I should avoid inheritance with ABCs and if I do, then from a standard class. That is, I should avoid creating a typical base and subclass construct that is used in a strategy pattern, for example."

"If I look …

more ...

OO Design Principles: ABC's

Some quotes to provide context.

"I read several times that ideally I should avoid inheritance with ABCs and if I do, then from a standard class. That is, I should avoid creating a typical base and subclass construct that is used in a strategy pattern, for example."

"If I look …

more ...