Me gusta la convención de Java de tener una clase pública por archivo, incluso si a veces hay buenas razones para incluir más de una clase pública en un único archivo. En mi caso, tengo implementaciones alternativas de la misma interfaz. Pero si me gustaría colocarlos en archivos separados, tendría nombres redundantes en las declaraciones de importación (o engañosa nombres de los módulos):Organizar clases de Python en módulos y/o paquetes
import someConverter.SomeConverter
mientras que someConverter
serían el archivo (y módulo) nombre y el nombre de clase SomeConverter
. Esto se ve bastante poco elegante para mí. Para poner todas las clases alternativas en un solo archivo daría lugar a una declaración de importación más significativo:
import converters.SomeConverter
pero me temo que los archivos se vuelven bastante grande, si pongo todas las clases relacionadas en un único archivo de módulo. ¿Cuál es la mejor práctica de Python aquí? Es una clase por archivo inusual?
en el momento en que está tratando con un proyecto que consiste en 10'000 clases, usted será feliz si puede encontrar una clase (público) por su archivo (y el paquete) en lugar del nombre tener que buscar el contenido de un ll archivos ... esa es probablemente la razón por la cual Java exige que haya solo una clase pública por archivo y que el nombre del archivo debe ser el nombre de la clase. –