stylistic question -- optional return value
Stefan Schwarzer
sschwarzer at sschwarzer.net
Fri Aug 30 18:17:34 EDT 2002
Hi Erik Max
Erik Max Francis wrote:
> Stefan Schwarzer wrote:
> In my opinion, returning a custom instance of some dummy class instead
> of a dictionary seems _less_ readable. If I call a function and get
> back a dictionary, I immediately know what's going on. If I call it and
> get back an instance of DummyClass, it's much less clear what I'm
> supposed to do with the result.
How do you know that you really got a dictionary and not some object of a class
that looks like a dictionary at first sight? IMHO, you have to define the interface
anyway.
> I'm a strong advocate of writing self-documenting code whenever
> possible.
I think the same of me. :-)
> Returning an instance with custom attributes involves more
> overhead, is slower (albeit by a very small amount), and seems less
> clear than just returning a dictionary
I think that depends on the circumstances. As a guideline, I would use a custom
class if the return value has an abstract meaning that should be covered by a class.
> -- because, after all, if you're
> returning an instance, that instance's __dict__ is really what holds the
> information anyway.
Perhaps that's an implementation-related aspect that shouldn't be taken too
seriously :-)
Stefan
More information about the Python-list
mailing list