online nomenclatura name español python naming-conventions

nomenclatura - pep8 python español



Convenciones de nomenclatura de Python para módulos (5)

Sé que mi solución no es muy popular desde el punto de vista pitónico, pero prefiero usar el enfoque Java de un módulo-> una clase, con el módulo nombrado como clase. Entiendo la razón detrás del estilo python, pero no me gusta mucho tener un archivo muy grande que contenga muchas clases. Me resulta difícil navegar, a pesar de doblar.

Otra razón es el control de versiones: tener un archivo grande significa que sus confirmaciones tienden a concentrarse en ese archivo. Esto puede llevar a una mayor cantidad de conflictos a resolver. También pierde la información de registro adicional que su confirmación modifica archivos específicos (por lo tanto, involucra clases específicas). En su lugar, ve una modificación en el archivo del módulo, con solo el comentario de compromiso para comprender qué modificación se ha realizado.

Resumiendo, si prefieres la filosofía python, busca las sugerencias de las otras publicaciones. Si prefieres la filosofía tipo java, crea un Nib.py que contenga Nib de clase.

Tengo un módulo cuyo propósito es definir una clase llamada "plumín". (y algunas clases relacionadas también.) ¿Cómo debo llamar al módulo en sí? "punta"? "nibmodule"? ¿Algo más?


Solo semilla. Nombra el Nib de clase, con una N mayúscula. Para obtener más información sobre convenciones de nombres y otros consejos de estilo, consulta PEP 8 , la guía de estilo de Python.


Yo lo llamaría nib.py. Y también nombraría la clase Nib.

En un proyecto python más grande en el que estoy trabajando, tenemos muchos módulos que definen básicamente una clase importante. Las clases se nombran comenzando con una letra mayúscula. Los módulos se nombran como la clase en minúsculas. Esto conduce a importaciones como las siguientes:

from nib import Nib from foo import Foo from spam.eggs import Eggs, FriedEggs

Es un poco como emular el modo Java. Una clase por archivo. Pero con la flexibilidad adicional, siempre puedes agregar otra clase a un solo archivo si tiene sentido.


la punta está bien. Si tiene dudas, consulte la guía de estilo de Python.

De PEP 8 :

Los nombres de paquetes y módulos deben tener nombres cortos, minúsculos. Los subrayados se pueden utilizar en el nombre del módulo si mejora la legibilidad. Los paquetes de Python también deben tener nombres cortos en minúsculas, aunque se desaconseja el uso de guiones bajos.

Como los nombres de los módulos se asignan a nombres de archivos, y algunos sistemas de archivos no distinguen entre mayúsculas y minúsculas, es importante que los nombres de los módulos sean bastante cortos: esto no será un problema en Unix, pero puede ser una problema cuando el código se transporta a versiones anteriores de Mac o Windows, o DOS.

Cuando un módulo de extensión escrito en C o C ++ tiene un módulo Python que lo acompaña y proporciona una interfaz de nivel superior (por ejemplo, más orientado a objetos), el módulo C / C ++ tiene un guion bajo (por ejemplo, _socket).


El módulo foo en python sería el equivalente a un archivo de clase Foo en Java

o

módulo foobar en python sería el equivalente a un archivo de clase FooBar en Java