¿Debo usar if defined?
En Ruby, ¿debería usar || = o si está definido? para la memorización?
return @current_user_session if defined?(@current_user_session)
@current_user_session = UserSession.find
O ||=
@current_user_session ||= UserSession.find
Noté el método if defined?
se usa cada vez más recientemente. ¿Hay alguna ventaja para uno sobre el otro? Personalmente, prefiero ||=
para la legibilidad. También creo que Rails podría tener una macro memoize
que proporciona este comportamiento de forma transparente. ¿Es este el caso?
Se llama memoize – nasmorn