¿Cuáles son los preferidos de las convenciones de nomenclatura de los atributos, métodos y clases en diferentes idiomas?

StackOverflow https://stackoverflow.com/questions/49382

  •  09-06-2019
  •  | 
  •  

Pregunta

Son las convenciones de nomenclatura similar en diferentes idiomas?Si no, ¿cuáles son las diferencias?

¿Fue útil?

Solución

Como otros han dicho, las cosas varían mucho, pero aquí es una visión general de los más utilizados convenciones de nombres en varios idiomas:

lowercase, lowercase_with_underscores:

Comúnmente utilizado para las variables locales y los nombres de función (típico de C sintaxis).

UPPERCASE, UPPERCASE_WITH_UNDERSCORES:

Comúnmente utilizado para las constantes y variables que no cambian.Algunos (la más antigua) lenguajes como BASIC también tienen un convenio para el uso de mayúsculas para todos los nombres de variable.

CamelCase, javaCamelCase:

Normalmente se utiliza para los nombres de las funciones y los nombres de las variables.Algunos lo utilizan sólo para las funciones y combinarlo con minúsculas o lowercase_with_underscores para las variables.Cuando javaCamelCase se utiliza, normalmente se utiliza tanto para las funciones y variables.

Esta sintaxis también es bastante común para Api externas, ya que esta es la forma en Win32 y APIs de Java hacerlo.(Incluso si una biblioteca utiliza una convención diferente internamente suelen exportación con el (java)CamelCase sintaxis de los nombres de función.)

prefix_CamelCase, prefix_lowercase, prefix_lowercase_with_underscores:

Comúnmente utilizado en idiomas que no admiten espacios de nombres (es decir,C).El prefijo se suele denotar la biblioteca o módulo para el cual la función o variable pertenece.Generalmente reservado para las variables globales y funciones globales.Prefijo también puede ser en MAYÚSCULAS.Algunos convenios de uso de minúsculas prefijo para las funciones internas y variables en MAYÚSCULAS y prefijo para exportar queridos.

Por supuesto, hay muchas otras maneras de dar nombre a las cosas, pero la mayoría de los convenios se basan en uno de los mencionados anteriormente o una variedad en los.

BTW:Me olvidé de mencionar la notación húngara a propósito.

Otros consejos

Cada idioma tiene un estilo específico.Al menos uno.Cada proyecto adopta un estilo específico.Al menos, deberían.Esto a veces puede ser un estilo diferente a la canónica el estilo de su lenguaje utiliza - probablemente se basa en el dev líderes preferencias.

Qué estilo utilizar?

Si su idioma de los buques con una buena biblioteca estándar, tratar de adoptar las convenciones en la biblioteca.

Si el lenguaje tiene un libro canónico (El lenguaje de Programación C, el Camello, El Libro, la Programación Ruby, etc.) el uso que.

A veces el lenguaje de los diseñadores (C#, Java vienen a la mente), de hecho, escribir un montón de directrices.El uso de estos, especialmente si la comunidad adopta demasiado.

Si usa varios idiomas recuerde permanecer flexible y ajustar su preferencia de estilo de codificación para el idioma que está utilizando - cuando la codificación en Python usar un estilo diferente a la codificación en C#, etc.

El g'day,

Una de las mejores recomendaciones que puedo hacer es leer la sección correspondiente(s) de Steve McConnell Code Complete (Link De Amazon).Él tiene una excelente discusión sobre la denominación de las técnicas.

HTH

saludos,

Rob

Por supuesto, hay algunas directrices comunes pero también hay diferencias debido a la diferencia en la sintaxis del lenguaje\diseño.

Para .NET (C#, VB, etc) yo recomiendo siguientes recursos:

Creo que la mayoría de las convenciones de nomenclatura puede variar, pero el desarrollador, como por ejemplo " nombre de variables como:mulitwordVarName, sin embargo algunos de los dev he trabajado con usa algo como mulitword_var_name o multiwordvarname o aj5g54ag o...Creo que realmente depende de su preferencia.

Años atrás, un viejo y sabio programador me enseñó los males de la La notación húngara, este fue un verdadero legado de sistema, Microsoft adoptó lo que algunos en el SDK de Windows, y más tarde en MFC.Fue diseñado en torno suelto escrito en lenguajes como C, y no por fuertes escrito en lenguajes como C++.En el momento en que yo estaba de programación de Windows 3.0 con Borland Turbo Pascal 1.0 para Windows, que más tarde se convirtió en Delphi.

De todos modos cortocircuito largo de la historia en este momento el equipo estaba trabajando en nuestros propios estándares muy simple y aplicable a casi todos los idiomas, que se basa en simples prefijos -

  • un argumento
  • l - local
  • m - miembro
  • g - global

El énfasis aquí es en el ámbito de aplicación, se basan en el compilador para comprobar el tipo, todo lo que necesita atención es el ámbito donde los datos vidas.Esto tiene muchas ventajas sobre desagradable viejo notación húngara en que si se cambia el tipo de algo a través de la refactorización usted no tiene que buscar y reemplazar todas las instancias de la misma.

Casi 16 años después, todavía me promover el uso de esta práctica, y han encontrado que es aplicable a casi todos los idiomas que he desarrollado en.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top