Tengo una clase llamada SSLXMLRPCServer. ¿Debería ser eso o SslXmlRpcServer?Si mi nombre de clase python tiene un acrónimo, ¿debo mantenerlo en mayúscula o solo la primera letra?
Respuesta
Normalmente tengo mayúsculas acrónimos. Twisted y algunas otras bibliotecas hacen esto también.
Esto es una cuestión de preferencia personal, pero el segundo formato me resulta mucho más fácil de leer. El hecho de que su primer formato tenga un error tipográfico (PRC en su lugar o RPC) sugiere que no soy el único.
.NET tiene una perspectiva interesante: los componentes de 2 letras están en mayúscula (sobre todo 'IO'; no recuerdo haber visto cualquier otro en 2 letras, en realidad), pero todo lo demás está encasillado en Pascal, así que 'Xml',' Rpc', 'Ssl',' Http' etc. Suena raro, pero yo, la gente que lo escribí originalmente, simplemente no podía soportar el dolor mirando a 'Io'. –
El PEP-8 no menciona nada sobre los acrónimos. Sería más seguro mantener los acrónimos en mayúscula (es lo que más veo).
Quiere decir, no lo menciona excepto * Nota: Al usar abreviaturas en CapWords, escriba en mayúscula todas las letras de la abreviatura. Así HTTPServerError es mejor que HttpServerError. * Ciertamente ... :) (Cabe señalar que no estoy de acuerdo con esta recomendación.) –
Este comentario debería haber sido una respuesta (y entonces debería haber sido aceptado como LA respuesta; si ' Hablando de lo que uno * debería * hacer en el formato de Python, Pep-8 es donde está). – machineghost
Tuve este problema por mucho tiempo. Tengo un Acrónimo en mayúscula pero no me gusta porque cuando los encadenas (como en tu ejemplo) no se siente bien. Sin embargo, creo que lo mejor que puede hacer es elegir y atenerse al éxito, por lo que al menos no sabe cuándo tiene que hacer referencia a algo como está escrito sin tener que verificar (que es uno de los beneficios del estándar de codificación)
No se siente bien hasta que decida comenzar a hacerlo. Luego te irrita mucho el software que intercala acrónimos que los hacen imposibles de analizar. –
Excepto en nuestro caso: SSLXMLRPCServer es realmente difícil de leer, por lo que no puede sentirse bien (incluso si es la mejor solución) – mb14
El problema con los acrónimos en mayúscula en los nombres de CamelCase es que la palabra que sigue al acrónimo parece una parte de ella, ya que comienza con una letra mayúscula. Además, cuando tiene varios en una fila como en su ejemplo, no está claro dónde comienza cada uno. Por esta razón, probablemente usaría tu segunda opción.
Debe ser SSLXMLRPCServer, para que coincida con las clases de biblioteca estándar como SimpleXMLRPCServer, CGIXMLRPCRequestHandler, etc.
la adopción de una convención de nomenclatura que se diferencia de sus equivalentes en la biblioteca estándar sólo se va a confundir a la gente.
¿Qué tal SSL_XML_RPC_Server
por la sigla y legibilidad?
Es lo que hago a menudo cuando quiero evitar camel-case por algún motivo.
Creo que al mezclar el estuche de camello y el estuche de serpiente, vale la pena hacerlo. En mi opinión, debes elegir una forma de nombrar cosas y atenerse a ellas, sin excepción. – mb14
@ mb14: "Los casos especiales no son lo suficientemente especiales como para romper las reglas. Aunque la practicidad supera a la pureza". ¿La legibilidad es una característica práctica? –
@ mb14: "Una consistencia tonta es el duende de las mentes pequeñas". – martineau
Como se dijo anteriormente, PEP-8 dice que se debe usar mayúsculas para acrónimo. Ahora, python zen también dice "legibilidad cuenta" (y para mí el zen tiene prioridad sobre el PEP :-).
Mi opinión en una situación tan poco clara es tener en cuenta el estándar en el contexto de programación, no solo el idioma. Por ejemplo, alguna clase xml-http-query debe escribirse XMLHttpQuery
en un contexto de servlet (w.r.t XMLHttpRequest
).
No conozco su contexto, pero parece que XMLRPCServer
existe y desea adjuntar ssl. Por lo que podría elegir algo como:
SSL_XMLRPCServer
sería hecho hincapié en la XMLRPCServer
-sin cambiar IT.
Además, te quedas cerca de PEP-8 y seguir el Zen :-)
Mis 2 centavos
Nota: si no XMLRPCServer
está fuertemente relacionada con su clase y es realmente un estándar en el dominio , entonces necesita elegir otro nombre, para no ser confuso.
- 1. python capitalizar la primera letra solo
- 2. Primera letra mayúscula para EditText
- 3. strftime hacer la primera letra mayúscula (mayúscula) en PHP
- 4. Poner en mayúscula la primera letra. MySQL
- 5. La primera letra del nombre del archivo Git mayúscula
- 6. ¿Cómo hacer la primera letra en mayúscula en un UILabel?
- 7. mayúscula la primera letra de cada palabra
- 8. ¿Cómo se muestra la primera letra en mayúscula?
- 9. Convertir la primera letra en cadena en mayúscula
- 10. Compruebe si la primera letra de la palabra es una letra mayúscula
- 11. Poner en mayúscula la primera letra en ruby
- 12. C#: nombres de métodos con la primera letra en mayúscula?
- 13. Devolver la primera letra de NSString en mayúscula
- 14. Poner en mayúscula la primera letra de las oraciones CSS
- 15. Cómo encontrar la primera letra que no sea mayúscula en la cadena usando python
- 16. XSL - ¿Cómo se escribe en mayúscula la primera letra
- 17. ¿Cómo se escribe en mayúscula la primera letra de la primera palabra en una oración?
- 18. Comprobando si la primera letra de la cadena está en mayúscula
- 19. Cómo mayúscula en la primera letra después de un guión, es decir, Adam Smith-Jones
- 20. Matplotlib: figlegend solo imprime la primera letra
- 21. Bootstrap Typeahead solo mostrando la primera letra
- 22. Hacer la primera letra en mayúscula y el resto en minúscula en una cadena
- 23. ¿Primera letra del mayúscula de Javascript/jQuery con algunas excepciones?
- 24. Obtener la posición de la primera letra mayúscula en una cadena utilizando php
- 25. Cambiar la primera letra de cada línea de un archivo a mayúscula
- 26. ¿Cómo actualizar los datos en mayúscula como primera letra con el comando t-sql?
- 27. ¿Cuál es la forma más rápida de verificar si la cadena tiene una letra mayúscula en C#?
- 28. ¿Cómo comprobar si un carácter está en mayúscula en Python?
- 29. palabra dividida por la letra mayúscula
- 30. ¿Cómo puedo escribir en mayúscula la primera letra de una entrada?
De acuerdo, se suponía que era SSLXMLRPCServer. :) – gregturn
Me gustan ambos por diferentes razones.a) El primero es la versión "correcta" del acrónimo. b) El segundo es más fácil de leer. – gregturn
Un acrónimo es una abreviación (uno que puede ser hablado), PEP8 es claro sobre abreviaturas: [todas las mayúsculas] (https://www.python.org/dev/peps/pep-0008/#descriptive-naming-styles) en lugar de CapsWords (con HTTPServerError como el ejemplo proporcionado) – Anthon