[Python-Dev] PEP 8 updates/clarifications

Jim Fulton jim at zope.com
Mon Dec 12 12:41:39 CET 2005


Raymond Hettinger wrote:
>>Do not use accessor methods, like ``obj.getFoo()`` and
>>``obj.setFoo(v)``, instead just expose a public attribute
>> (``obj.foo``).
>> This advice is, of course, not appropriate for all users (properties are
> not typically in a Python beginner's skill set)

Really? In any case, properties are only needed if you change
your mind about the implementation. In my experience, they are
rarely needed.
 > or all use cases.
I think the advice gave a very narrow case, which was when you were going
to write trivial accessors.
 > It is
> closer to one person's view of the One-Right-Way(tm). Opinions on
> programming best practices vary widely, evolve over time, and may be
> context dependent.

I thought I was reflecting more than just my opinion.
Also, the original text had just as strong an admonition --
one that, as I mentioned, seem to be out of line with
current thinking.
...
>>>experience (for everyone I know) has shown them to be an attractive
>>>nuisance. I recommend discouraging them.
>>>>I really really hate double underscores
>>> FWIW, I think we have no business dictating to others how they should
> name their variables. This is doubly true for a convention that has a
> long history and built-in language support.

Even if, experience with a practice has shown it to be highly
problematic?
> My preference is to leave PEP 8 for the minimum practices necessary for
> one programmer to be able to read and maintain another programmer's
> code.

I'm for making the style guide smaller. I do think it offers too
much advice in places. Although I'm not sure we could all agree
om what those places are. :)
Jim
-- 
Jim Fulton mailto:jim at zope.com Python Powered!
CTO (540) 361-1714 http://www.python.org
Zope Corporation http://www.zope.com http://www.zope.org


More information about the Python-Dev mailing list

AltStyle によって変換されたページ (->オリジナル) /