티스토리 뷰


- Warning Msg

lambda argument should be moved out of parentheses

this inspection detects a lambda expression inside parentheses which can be moved outside of them


- Why

가능하면 람다 표현식을 괄호 () 밖으로 내보내라는 뜻.


- Solved

아래와 같은 람다 식이 있다.

예제의 표현식은 Date Picker 의 init 부분이며, 

init 에서 마지막 parameter 는 OnDateChangedListener 이다.

mBinding.dpcResrvDate.init(2019, 11, 2, { view, year, monthOfYear, dayOfMonth ->
Log.d("test", "test ${year} ${monthOfYear} ${dayOfMonth} ${view.id}")
})

위와 같이 구현하면, 경고문구를 볼 수 있다.



이 표현식을 다음과 같이 변경하면 해결할 수 있다.


mBinding.dpcResrvDate.init(2019, 11, 2)
{ view, year, monthOfYear, dayOfMonth ->
Log.d("test", "test ${year} ${monthOfYear} ${dayOfMonth} ${view.id}")
}

이게 가독성이 더 좋아지는가에 대한 개인적인 의문은 있지만, 

되도록이면 warning msg 를 없애고 싶은 개발자들의 찝찝함이 해결되기 바란다.


- 참고

https://kotlinlang.org/docs/reference/coding-conventions.html#lambda-formatting












공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/04   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
글 보관함