Tôi có nên sử dụng if defined?
Trong Ruby, tôi nên sử dụng || = hoặc nếu được xác định? để ghi nhớ?
return @current_user_session if defined?(@current_user_session)
@current_user_session = UserSession.find
Hoặc ||=
@current_user_session ||= UserSession.find
tôi nhận thấy phương pháp if defined?
đang được sử dụng nhiều hơn và gần đây hơn. Có lợi thế nào so với cái kia không? Cá nhân tôi thích ||=
để dễ đọc. Tôi cũng nghĩ Rails có thể có macro memoize
cung cấp hành vi này một cách minh bạch. Đây có phải là trường hợp không?
Nó được gọi là memoize – nasmorn