私は自分のコードを整理するために言語に組み込まれた構造を使いたいと思っています。しかし、私は一貫性を保つことができない1つの状況があります。なぜなら、私はそれを行う最良の最善の方法を見ていないからです。それは、サポートクラス、つまり他のクラスによって内部的に使用されるクラスに関するものです:それらを内部クラスにするか、クラスを分離するかです。Pythonスタイルの質問:クラスを内部クラスとしてサポートしていますか?
内部クラス:
class Complicated:
class Utility1:
pass
class Utility2:
pass
pass
別々のクラス:
class Complicated:
pass
class Utility1:
pass
class Utility2:
pass
内部クラスは、それらを使用する唯一のクラス内にスコープされるという利点があります。しかし、問題は、インデントのためにコードを書くスペースが少なくなることです。
外部クラスには利点も欠点もありません。私はサポートクラスを書くたびに、いつも精神的なエネルギーを費やすことに飽き飽きし、このばかげた問題について疑問を抱いています。
私の質問は、背中に相当なパイソン経験を持つ人がこれに関するベストプラクティスがあるかどうかをアドバイスできますか?その答えが「それは頼りになる」と答えても、それは自分自身よりも経験豊かな人がいれば分かります。
好みはのために '' __all__'上_'接頭辞のはなぜ? –
@Joe Wreschnig: '__all__'は' from module import * 'のみに関係するので、私はとにかく使用しません。主要な '_'はPythonの内部使用インジケータです(http://www.python.org/dev/peps/pep-0008/)。 –