2012-08-13 20 views
10

¿Cuál de las siguientes declaraciones cumple con las convenciones de nomenclatura de Java?Convención de nomenclatura Java para nombres de variables booleanas: writerEnabled vs writerIsEnabled

private boolean writerIsEnabled; 
// with methods like 
public boolean getWriterIsEnabled() 
public void setWriterIsEnabled() 

O

private boolean writerEnabled; 
// with methods like 
public boolean getWriterEnabled() 
public void setWriterEnabled() 

personalmente encuentro el primer nombre "writerIsEnabled" para ser más legible, especialmente cuando se utiliza en una sentencia if como esto -

if(writerIsEnabled) 
{ 
    //... 
} 
+1

posible duplicado de [nombres válidos de beans java para booleanos] (http://stackoverflow.com/questions/799280/valid-java-bean-names-for-booleans) –

+4

Personalmente, me gustaría pecar de lado '[es] WriterEnabled'. Esto significa que llamaría a la variable 'writerEnabled' y getter' isWriterEnabled' y setter 'setWriterEnabled'. Sin embargo, esto se debe más a la autocompletación del código que a la convención. – MadProgrammer

Respuesta

23

Por lo como sé, es de esta manera:

private boolean writerEnabled; 
// with methods like 
public boolean isWriterEnabled(); 
public void setWriterEnabled(boolean enabled); 

Cuando el tipo es boolean o Boolean, la diferencia es que el Getter comienza con is en lugar de get.

Personalmente prefiero el enfoque isWriterEnabled. Tecnologías como, por ejemplo, JSF respetan ese estándar al acceder a propiedades. Las expresiones EL son reconocidas con is y get.

5

Si esto es en una clase de escritor, es probable que desee eliminar el escritor de su variable.

Normalmente no utilizaría Is en los nombres de mi campo, pero sí en los métodos.

Algo como esto:

private boolean writerEnabled; 

public boolean isWriterEnabled(); 
public void setWriterEnabled(boolean enabled); 

Aunque este es mi convención de nombres personales, probablemente debería hablar con cualquier otra persona que se está trabajando, para ver lo que iban a utilizar.

2
private boolean writerEnabled; 
public boolean isWriterEnabled() 
public void setWriterEnabled() 
2

Para los métodos get y set, creo que la convención es public boolean isWriterEnabled() y public boolean isReaderEnabled(). En cuanto a la variable, debe ser private boolean writerEnabled.

Cuestiones relacionadas