Tu programa, mi programa

8
Noviembre
2007
tu programa
n. Un laberinto de inconsecuencias manchado de trucos de listillo y comentarios irrelevantes. Ver mi programa.
mi programa
n. Una gema de precisión algorítmica, que ofrece el más sublime equilibrio entre la escritura de código compacta y eficiente en una mano, y la legibilidad de sus comentarios para la posteridad en la otra. Ver tu programa.

Y la pregunta es: ¿el siguiente código es “demasiado listo” o se entiende por si mismo?

public abstract class Orden
{
  /* … */
  private List<DefinicionArgumento> definicionArgumentos;
  private boolean argumentosOpcionales;
  /* … */
  protected void addDefinicionArgumento(DefinicionArgumento.Tipo tipo) {
    addDefinicionArgumento(tipo, false);
  }
  
  protected void addDefinicionArgumento(DefinicionArgumento.Tipo tipo, boolean opcional) {
    argumentosOpcionales ||= opcional;
    defincionArgumento.add(new DefinicionArgumento(tipo, opcional || argumentosOpcionales));
  }
  /* … */
}

Me preocupa sobre todo el nombre de la variable argumentosOpcionales y si se entiende lo que hace.

¿Alguna opinión?


Deja un comentario

Puedes enterarte de las respuestas a tus comentarios de esta entrada mediante myComments.

XHTML: Puedes utilizar las siguientes etiquetas: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Tu servidor sin límites: 20GB de espacio, 1TB de transferencia, 1 dominio gratuito. Por 1.5€ al mes utilizando el código "RUIDOBLANCO" en DreamHost. Más información.