2 ms·
That seems to fit the definition of leaky abstraction (an implementation detail influencing whether how you use it). Leaky abstractions are all over. That same
by phamilton 13y ago
That seems to fit the definition of leaky abstraction (an implementation detail influencing whether how you use it). Leaky abstractions are all over.
That same logic would suggest that we should name our methods Model.foo_slow() and Model.bar_fast() because the execution speed is important and should be transparent to the caller.
In practice, Model.foo() ends up often being memoized so that all but the first call are practically equivalent to accessing an attribute.