.net - programacion - ¿Cuáles son las convenciones de nomenclatura que usa durante la codificación?
kebab-case (7)
¿Cuáles son las convenciones de nomenclatura que usa durante la codificación?
Amigos, por favor no publiquen respuestas como "Me gusta __field" o "Me gusta m__field". Es una pregunta muy personal y subjetiva sin una sola respuesta.
Si tiene alguna guía , ya es una gran victoria. Peor cosa en el equipo de desarrollo es la falta de convenciones comunes.
Sería bueno si tratara de describir algunos beneficios de una guía dada.
Por ejemplo:
el prefijo de campos con guion bajo puede mejorar la autocompletacion con intellisense
Aquí hay una lista de convenciones de nombres generales de MSDN.
Sin embargo, tiendo a ir con el flujo. Independientemente de los estándares actualmente vigentes, generalmente es más fácil ir con ellos y quizás cambiarlos lentamente con el tiempo. No es realmente práctico simplemente entrar en un proyecto con su propia idea de "estándares" y tratar de implementarlos.
No importa EN REALIDAD qué estándares se usan, solo que hay algunos y las personas saben lo que son.
Elija uno para ser consistente. Cambiar los estilos de nombre conduce a la confusión.
Espero que no hablemos de prefijos para nombres de campo y estilos de corchetes aquí :)
Aquí está mi biblia para .NET:
texto alternativo http://ecx.images-amazon.com/images/I/51HT7RDZW7L._SL500_AA240_.jpg
Además, MSDN brinda pautas sólidas.
Otra fuente útil es MS Internal Coding Guidelines
Para agregar a la respuesta de @Aku, los autores de las Directrices de diseño del marco han publicado una versión resumida en línea de sus directrices, con énfasis en nombrar convenciones.
Directrices de diseño del marco Digest v2
La consistencia es clave. Dependiendo del tamaño de su equipo de desarrollo, el uso de una convocatoria consistente y documentada hará que sea más fácil seleccionar el código de otra persona y que otros recojan su propio código.
Utilizo una combinación de húngaro , caja de camello y otras reglas que se me ocurren al principio de un proyecto. Como ahora mismo:
- Los métodos son en mayúsculas (DoThis)
- las variables son camel case (thisThing)
- las variables de nivel de página están precedidas por _ (_thisWorksEverywhere)
- las regiones son todas minúsculas (# propiedades externas de la región)
- Las propiedades y los objetos son mayúsculas (Object.Property)
- Las propiedades externas vienen precedidas por _ (Object._ForeignGroups)
- Los controles son húngaros en cierta medida, como (txtTextBox) y (rptRepeater). No soy demasiado estricto en cuanto a lo que es habitual porque "Marca de agua" puede ser wm o wk o lo que sea, siempre y cuando todos coincidan entre sí a través de mi aplicación.
... etc. Algunas cosas son estándar, otras dependen de la interpretación, pero lo más importante es la coherencia en toda la aplicación.
La notación húngara se puede usar. No me molesto, pero doy varias cosas (variables, controles, etc.) nombres razonables.
Por ejemplo, uso un prefijo de estilo húngaro para nombres de control como txt para TextBoxes, btn para Buttons, pic para PictureBoxes, lbl para Labels, etc. Eso ayuda a identificar fácilmente qué es un control.
Para nombres de funciones trato de usar nombres explicativos razonables, pero nada con reglas particulares. Para nombres de variables nuevamente, solo uso nombres explicativos pero nada especial.