DonutWorks / Ari

0 stars 0 forks source link

인자(parameter)를 key-value로 받기 #344

Open shaynekang opened 9 years ago

shaynekang commented 9 years ago

함수(또는 생성자)의 인자를 받을 때 형식이 명확하지 않다면, key-value 방식을 통해 옵션 형식으로 받는 것도 좋은 방법입니다. 가령,

user_cookies = Authenticates::UserCookies.new(cookies)
user_cookies.create!(out[:user], false)

의 경우, user_cookies.create!의 두 번째 인자(false)가 구체적으로 어떤 걸 나타내는지 확인하기 어렵습니다. 이런 경우,

user_cookies = Authenticates::UserCookies.new(cookies)
user_cookies.create!(out[:user], regard_as_activated: false)

이렇게 key-value로 받아주면 코드가 훨씬 명확해지죠. ㅎㅎ 루비 2.0에는 Keyword arguments라는 개념이 생겼으니, 이를 활용해봐도 좋을 것 같습니다.

다른 코드도 살펴보시고, 비슷한 부분이 있다면 리펙토링하면 좋겠습니다. ㅎㅎ