Soy nuevo en Ruby y me sorprendí cuando descubrí que todos los objetos son verdaderos, aparte de nulo y falso. Incluso 0 es cierto.
Lo bueno de esa propiedad del lenguaje es que puedes escribir:
if !variable
# do stuff when variable is nil
end
Mis colegas, que son desarrolladores más experimentados de Ruby, insisten en que debería elegir eso en lugar de usar .nil. al igual que:
if variable.nil?
# do stuff when variable is nil
end
Sin embargo, creo que esta última es una mejor opción por dos razones: 1. Creo que está más orientada a objetos, especialmente en un lenguaje como Ruby, donde todo es un intercambio de objetos y mensajes. 2. En mi opinión, es más legible, incluso si es menos compacto.
¿Estoy cometiendo un error de "novato" aquí?