2009-04-27 8 views
6

Microsofts marco Directrices de diseño definen, entre otras cosas, lo siguiente:.NET guidelines: ¿Por qué excepción para acrónimos de dos letras?

"No capitalizar los dos personajes de acrónimos de dos caracteres, excepto el primera primera palabra de un identificador de camello entubado"

Por lo tanto, existe una excepción definida para los acrónimos que solo comprenden dos letras, ya que los acrónimos con tres o más letras están revestidos de camello o pascal "propiamente".

La pregunta es: ¿Por qué hay una excepción, es decir, cuál es la razón detrás de esto? No pude obtener una explicación del libro FDG o los blogs de Abrams y Cwalina.

+0

Es un poco difícil entender su pregunta John - hay dos posibles excepciones de las que podría estar hablando (identificadores de camel-cased, o las diferencias en las reglas entre dos y dos acrónimos de caracteres). –

+0

Brian: Perdón por la ambigüedad. Mi pregunta solo menciona dos la diferencia entre dos y dos acrónimos de caracteres, no el camello contra pascal. –

Respuesta

0

Dado que la EM se ve mucho mejor que ms ...

serio, el punto de estas reglas era deshacerse de nombrar cosas como CALTextBox. Donde CAL es el acrónimo de una empresa. El equipo de diseño de idiomas consideró que "CAL" olía demasiado a la notación húngara que tanto se abusa (y poco se entiende) que la mayoría de los programadores no parecen entender bien.

Así que se lanzaron una pequeña diatriba para librar al mundo de la programación de esa mierda. Esta es una de las reglas que intenta codificarlo.

+3

Creo que sería MS, MS o ms. Pero nunca mS. –

-2

Microsoft .NET es realmente inconsistente cuando se trata de nombres. Francamente, el libro que has mencionado está lleno de tal excepción.

Supongo que la interfaz de usuario se ve mejor que Ui. Pero Id se ve mejor que ID ...

+2

ID no es un acrónimo, proviene de Identificador. Esa no es una excepción. – andreialecu

1

Dicen que si la primera parte de un identificador está en camel-cased, debe mantenerlo en mayúscula en lugar de capitalizarlo solo porque es un acrónimo. Eso es porque es más importante para ti poder decir eso, por ejemplo (y esto está directamente fuera del libro en cuestión, que me encanta por cierto), estás lidiando con un parámetro.

En cuanto a por qué usted capitaliza un acrónimo de dos caracteres pero no un acrónimo de tres caracteres, personalmente no necesito saber cuáles son los casos extremos porque me gusta su estética.

Por ejemplo, definitivamente prefiero esto:

XmlDocument 

Durante este:

XMLDocument 

Para mí, éste huele ligeramente a 1982. Y duele un poco.

Así soy yo, por supuesto. :)

+1

Brian: También prefiero XmlDocument sobre XMLDocument y UIElement sobre UiElement. Pero me gustaría saber por qué los chicos de MS así lo decidieron. –

+0

@john http://msdn.microsoft.com/en-us/library/ms229043(v=vs.100) – Maslow

0

Para camel case (donde la primera palabra está en minúsculas), necesita una excepción explícita a la excepción de abreviatura de dos letras normal para escribir en mayúscula la primera letra).

De lo contrario habría dos normas contradictorias:

  • Dos abreviaturas de letras tienen tanto letras mayúsculas.
  • La primera palabra/abreviación de un nombre de camello es menor.
+0

Deberíamos distinguir claramente entre abreviaturas y acrónimos cuando se habla de convenciones de nombres, como lo hace MS. Dado que para las abreviaturas no hay excepciones, excepto que debe evitarlas ...;) –

+0

Tiendo a considerar la "abreviatura de evitar" como una de las reglas que realmente solo tiene sentido para el nombre reutilizable (marco, biblioteca); a diferencia de la mayoría de las directrices que tienen sentido para todos los códigos .NET. – Richard

1

¿Por qué? Esta carcasa es solo un acuerdo (para mejorar la legibilidad), ¡no ciencia!

Cuestiones relacionadas