Pregunta

En PHP, nosotros (al menos los buenos programadores) siempre comenzamos nombres de variables generales con una letra minúscula, pero las variables / objetos de clase con una letra mayúscula para distinguirlos. De la misma manera, comenzamos los nombres de archivos generales con una letra minúscula, pero los archivos que contienen Clases con una letra mayúscula.

E.g:

<?php
$number=123;
$string="a string";
$colors_array=array('red','blue','red');
$Cat=New Cat();
?>

¿Son las convenciones iguales en java, es decir, los objetos comienzan con mayúsculas, pero el resto con minúsculas, o todo comienza con minúsculas, como he leído en otros lugares?

¿Fue útil?

Solución

Generalmente, todas las variables comenzarán con minúsculas:

int count = 32;
double conversionFactor = 1.5d;

A algunas personas les gusta poner constantes estáticas en todos los casos:

public static final double KILOGRAM_TO_POUND = 2.20462262;

Las cosas se vuelven más molestas cuando se trata de acrónimos, y no existe una norma real sobre si se debe usar:

HTMLHandler myHtmlHandler; 

o

HTMLHandler myHTMLHandler.

Ahora, de cualquier manera, tenga en cuenta que los nombres de las clases (Object, String, HTMLHandler) siempre comienzan con una letra mayúscula, pero las variables de los objetos individuales comienzan en minúsculas.

Otros consejos

Puede encontrar los nombres en las Convenciones de código Java .

Un resumen rápido:

  • Para las clases, use UpperCamelCase .
  • Para los miembros de la clase y las variables locales use lowerCamelCase
  • Para paquetes, use URI inverso, por ejemplo, org.acme.project.subsystem
  • Para constantes, use ALL_CAPS .
  • variablesAndMethodsLikeThis
  • ClassesLikeThis
  • CONSTANTES_LIKE_THIS

La convención es que los nombres de las clases comienzan con mayúsculas. Los nombres de las variables son camelCase. Incluso si la variable hace referencia a un objeto, aún comienza con minúsculas.

Esta página debería ayudar.

¿Qué piensas acerca del uso de camelCase para métodos de instancia y PascalCase para estática? Creo que podría ser muy útil, porque no habría ningún problema al verificar qué método es estático. Es mi propuesta

Las convenciones realmente dependen del lugar individual que está codificando.

En general, por lo que he visto las clases son CamelCased (con mayúscula primero), los métodos comienzan con minúsculas, y las variables que he visto por todas partes (algunos CamelCased, algunos camelCase con la primera letra más baja) : como se mencionó anteriormente, esta es la norma), algunos incluso con notación húngara). Depende de su estilo y del estilo que haya adoptado el proyecto en el que está trabajando.

A algunas personas (que no soy yo) les gusta diferenciar las variables de método de las variables de instancia prefijando las variables de instancia con " esto. " Esto también soluciona el problema que se produce al asignar un parámetro a una variable de instancia con el mismo nombre:

public ConstructorMethod(MyVar variable) {
    this.variable=variable;
}

Pero algunas personas sienten que siempre deberías usar ese patrón, pero no estoy loco por eso, creo que es excesivo si mantienes tus métodos y clases pequeños.

Además, algunas personas usan un patrón de denominación para los parámetros. Esto (de nuevo) resulta útil cuando está asignando un constructor a una variable de instancia:

public ConstructorMethod(MyVar pVariable) {
    variable=pVariable;
}

Por lo general, el patrón es pVariable o _variable . Ocasionalmente uso esto porque lo encuentro más legible que esto, pero tiene la desventaja de hacer que tus Javadocs sean menos legibles.

En cualquier caso, no me gusta la idea de SIEMPRE usar cualquiera de estos patrones, es bueno saberlo, pero si realmente necesitas ayuda para diferenciarlos en todo tu código, dile a Eclipse que los muestre en diferentes colores.

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