Kotlin

[Kotlin] for-loop with no additional object allocation

In Kotlin, we can use functions such as forEach, forEachIndexed, and map to iterate items in collection. It’s convenient to use, but it comes with cost; those functions create additional objects like Iterator. For most cases, it wouldn’t be a serious problem to have some temporary objects. However, when overriding onDraw method of View class, …

[Kotlin] for-loop with no additional object allocation Read More »

[Kotlin] 객체 할당 없는 for loop

Kotlin에서는 배열이나 컬렉션을 다룰 때 forEach, forEachIndexed, map 등을 통해 내부 항목들을 접근해서 연산을 수행할 수 있다. 이러한 함수들은 인덱스를 직접 관리할 필요가 없어서 편리하긴 하지만, Range나 Iterator같은 부가적인 객체를 생성한다는 단점이 있다. 대부분의 경우에는 객체 한두개 정도 추가 할당하는 것이 큰 문제가 되지 않겠지만, 안드로이드에서 View 클래스의 onDraw 메서드를 오버라이드할 때에는 메서드 내에서 새로운 …

[Kotlin] 객체 할당 없는 for loop Read More »

IntelliJ에서 Kotlin 버전 지정하기

안드로이드 스튜디오에서도 Kotlin을 쓸 수 있지만, 단순히 몇가지 문법과 기능들만 테스트해보고 싶을 때는 프로젝트를 따로 만드는 것이 편리하다. 현재 작업 중인 프로젝트에서 잠깐 코드를 작성했다가 지우는 방법도 있겠지만, 빌드가 가능한 상태가 되기까지 해야할 작업이 많이 남아있거나 하는 경우도 있으므로 인텔리제이에서 프로젝트를 따로 만들어두는 것이 좋다. 인텔리제이에서 Kotlin 프로젝트를 생성해서 사용하고 있었는데, 코루틴 최신 라이브러리를 추가하고 …

IntelliJ에서 Kotlin 버전 지정하기 Read More »