728x90
반응형
사실 If를 누가모르냐 라고 생각할 수 있겠지만 자바를 주로사용하다가 코틀린을 사용하는 사람들은 코틀린을 제대로 활용하지 못하는 경우가 많습니다.(제 얘기 입니다)
아직까지도 자바스럽게 코틀린을 사용하는 자틀린 개발자이지만 천천히 익숙해져 봅시다.
다음코드는 실제로 프로젝트를 할때 구현했던 코드입니다.
model.nickname.observe(this, Observer {
if(it.isEmpty() || model.checkNickName())
binding.checkNickNameText.visibility = View.INVISIBLE
else
binding.checkNickNameText.visibility = View.VISIBLE
})
editText에 닉네임을 입력받아 형식에 맞지않다면 경고문구를 띄워주는 코드입니다.
사실 작동하는데는 아무런 문제가 없는 코드이지만 한가지 거슬리는 부분이 있습니다.
바로 변수를 초기화하는 코드가 중복된다는점 입니다.
위의 코드를 한번만 작성하면 상관없겠지만 제 코드에서는 위와같은 코드가 4번이 반복되었기때문에 코드를 줄여보려고 시도하였습니다.
model.nickname.observe(this, Observer {
binding.checkNickNameText.visibility = if(it.isEmpty() || model.checkNickName()){View.INVISIBLE}else{View.VISIBLE}
})
코틀린의 if문은 변수의 초기화를 동시에 할 수 있습니다.
때문에 해당코드로 변경하게되면 코드중복이 줄어들고 코드의 길이또한 짧아지게 됩니다.
728x90
반응형
'Programming > Kotlin' 카테고리의 다른 글
코틀린 Retrofit2 Response 반환값 null 인경우 (1) | 2023.02.09 |
---|---|
CollapsingToolbarLayout 와 Viewpager2 호환문제 (0) | 2023.02.03 |
[코틀린] constraint 속성 동적으로 추가 (0) | 2022.08.22 |
[Kotlin] Android Compose 튜토리얼_1 (0) | 2022.08.02 |
[Kotlin]Cannot invoke setValue on a background thread 오류 (0) | 2021.06.15 |