본문 바로가기
반응형

kotlin72

Android - ViewModel ViewModel이란 액티비티와 프래그먼트에서 사용되는 UI관련 데이터를 보관하고, 관리하기 위해 디자인 되었습니다. 왜 UI 데이터를 보관하고 관리하기 위해 디자인 되었냐면, ViewModel이 있기전에는 UI컨트롤러의 라이플 사이클에 따라 그 안에 저장해 두었던 UI 관련 임시 데이터들이 모두 사라집니다. 그리고 액티비티가 종료되기 직전에 호출되는 onSaveInstanceState() 콜백에서 액티비티의 상태 또는 데이터를 저장할 수 있지만 직렬화할 수 없는 객체는 저장할 수 없습니다. 거기다 많은 양의 데이터를 저장할 수도 없었습니다. 그래서 나온 디자인이 ViewModel 디자인입니다. 그럼 사라지는 가장 대표적인 경우는 가로/세로(PORTRAIT->LANDSCAPE, LANDSCAPE->POR.. 2019. 10. 15.
코틀린(Kotlin)- 코틀린의 예외 처리 [출처 - Kotlin In Action] [아래 내용들은 Kotlin In Action을 공부하면서 스스로 정리한 내용입니다] kotlin의 예외 처리는 Java와 크게 다르지 않습니다. kotlin 문법으로 작성한다는 부분만 다를 것입니다. 그럼 code를 통해서 확인해 보겠습니다. if(percentage ! in 0..100){ throw IllegalArgumentException("A percentage value must be between 0 and 100 : $percentage") } //or var percentage = if(number in 0 .. 100){ number }else{ throw IllegalArgumentException("A percentage value mus.. 2019. 10. 11.
코틀린(Kotlin)- 대상을 이터레이션: while과 for 루프 [출처 - Kotlin In Action] [아래 내용들은 Kotlin In Action을 공부하면서 스스로 정리한 내용입니다] 이번에는 for 문과 while 문을 공부해 보겠습니다. while의 경우에는 do while과 while 두가지가 있고 Java와 다르지 않습니다. do{ ... }while(조건) while(조건){ ... } 하지만 for문은 쫌 다릅니다. Java의 경우에는 for(int i = 0; i < size ; i++){ .... } for( item : List()){ .... } 로 for문을 만듭니다. 반면 kotlin에서는 아래와 같이 for문을 만들 수 있습니다. (아래와 같이 작성하면 1부터 100까지 값이 프린트 됩니다.) for(i in 1..100){ print.. 2019. 10. 11.
코틀린(Kotlin)- 선택 표현과 처리 [출처 - Kotlin In Action] [아래 내용들은 Kotlin In Action을 공부하면서 스스로 정리한 내용입니다] 이번에는 자바의 switch를 대신하는 when과 enum을 선언하는 방법, 그리고 스마트 캐스트에 대해서 알아보겠습니다. enum 클래스 정의 enum은 Java보다 선언에 더 많은 키워드를 써야하는 흔치 않은 예입니다. Java의 경우에는 enum으로 끝나는데, kotlin은 enum class로 선업합니다. enum의 선언은 다음과 같습니다. enum class Color { RED, ORANGE, YELLOW, GREEN, BLUE, INDIGO, VIOLET } 위처럼 단순하게 나열 하는것 뿐많 아니라 enum class Color( val r: Int, val g: .. 2019. 10. 11.
반응형