Android(Kotlin) 261

Kotlin lambda

코틀린 뿐만이 아니라, 다른 언어들에서 람다 표현식(Lambda expression)에 대해서 들어본 적이 있으실겁니다. 함수형 프로그래밍에서 사용되는 방법으로, 익명 함수를 단순화한 것이라고 할 수 있습니다. 람다를 사용하면 뭐가 좋고 안좋은지를 살펴보면 장점으로는 코드가 간결해지고 재사용성이 높아지지만, 단점으로는 디버깅이 어려운 단점이 있습니다. 자, 그러면 kotlin에서 람다 함수를 간단하게 만들어보겠습니다. 간단하게 람다를 어떻게 사용하는지 살펴봤는데, 이 것을 좀 더 다양한 방법으로 사용하는 것을 알아보겠습니다. 인자가 1개일 경우 선언을 생략할 수 있으며 it 으로 접근 가능합니다. 기존 정의된 함수를 람다식으로 사용할 수 있습니다. - 참조 https://tourspace.tistory...

Android(Kotlin) 2021.08.16

Android Kotlin - let, with, run, apply, also

매번 공부해야지 하다가 거의 1년 미룬 let, with, run, apply, also에 대해서 알아보겠습니다. 구글 공식 문서나, 예제들을 찾아보다 보면 저 위의 친구들을 자주 만나게 되는데, 이 것들이 뭔지 대충은 알겠는데 설명해보라고 하면 뭐였지.. 라는 상황이 나옵니다. 사실 정리해도 잘 모르겠긴 합니다. 그래서 한번 알아보겠습니다. 맨 밑의 블로그 2개를 많이 참고했습니다. 일단 5개의 함수 정의부터 보겠습니다. inline fun with(receiver: T, block: T.() -> R): R { return receiver.block() } inline fun T.also(block: (T) -> Unit): T { block(this) return this } inline fun T..

Android(Kotlin) 2021.08.16

Kotlin 제네릭(Generic)

제네릭(Generic)에 대해서 알아보도록 하겠습니다. 사실 많이 들어보고, 써 보기도 했지만 여기에 대해서 깊게 고민하고 사용해본 적이 없습니다. 그러면 한번 자세히 알아보도록 하겠습니다. 일단 제네릭이 어떻게 생긴건지 한번 보고 가겠습니다. 아래처럼 라고 선언해주는 것입니다. 간단하게 말해서 설계할 때 구체적인 타입을 명시하지 않고, 타입 파라메터로 대체해서 실제로 사용될 때 구체적인 타입을 지정함으로써, 타입 변환을 최소하시키는 것입니다. 제네릭을 사용하면 얻는 장점으로는 - 컴파일 시 타입 체크로 에러를 사전에 잡을 수 있고 - 컴파일러가 타입캐스팅을 해주기 때문에 개발자가 편하고 - 코드의 재사용성이 높아집니다(당연하겠죠?) 그렇다면 간단한 예제를 보면서 어떻게 사용하는지를 한번 살펴보도록 하겠..

Android(Kotlin) 2021.08.16

Kotlin 반복문과, 이터레이터(Iterator)

코틀린의 반복문에 대해서 알아보겠습니다. 아래는 간단하게 숫자를 출력하는 예제입니다. 숫자 말고도 우리는 리스트의 값을 빼올 일이 많은데, 이 것은 어떻게 하는지 알아보겠습니다. 흔히 볼 수 있는, 반복문에 있는 값을 빼오는 문법입니다. 이번에는 indices를 사용해봤습니다. index와 같이 출력해봤습니다. 자, 여기까지 하면 그래도 반복문에 대해서 어느정도 알아봤습니다. 반복문을 공부하다보면 이터레이터(Iterator)라는 애가 나오는데 얘가 뭔지 한번 보겠습니다. Iterator는 컬렉션(Set, List, Map)에 저장되어 있는 것을 일관성있게 꺼내 오는 방법입니다. 아래와 같이 iterator가 다음 값이 있으면 출력되도록 해봤습니다. 이렇게 코틀린의 반복문과 이터레이터에 대해서 알아보았습니..

Android(Kotlin) 2021.08.16

Android Activity 생명주기(Life Cycle)

안드로이드 액티비티의 생명주기에 관한 내용입니다. 대부분 한번정도는 들어봤지만, 계속 헷갈릴 때가 많으실테니 이렇게 정리해놓습니다. 여기에서 내가 아니 이 것을 왜 알아야하냐? 혹은 이거 몰라도 안드로이드 앱 개발할 수 있는데? 라고 생각하시는 분들이 있을 수도 있으시겠지만, 아마 이런분들은 실제로 앱을 개발까지만 해보고, 런칭해서 운영까지 안해보셨을 가능성이 매우 높습니다. 보통은 사용자가 중간에 앱을 강제 종료하기도 하고, 다른 앱 갔다가 돌아오기도 하는 경우가 많기 때문에, 이와 관련해서 액티비티 생명주기를 살펴보면서 알아보겠습니다. 일단 7개의 메서드를 하나씩 알아보겠습니다. 1. onCreate() 2. onStart() 3. onResume() 4. onPause() 5. onStop() 6...

Android(Kotlin) 2021.08.12