gradle

반응형

    [Coroutine] 2. Coroutine 안드로이드에서 사용하기

    Coroutine with Kotlin 코틀린에서 코루틴의 기능이 언어 내에 내장되어 있다. 따라서 코틀린을 사용하도록 Gradle을 설정한다면 별도의 설정 없이 일반적인 코루틴을 사용할 수 있게 된다. 하지만, 안드로이드에서 코루틴(Coroutine)을 사용하기 위해서는 안드로이드의 런타임을 위한 라이브러리를 세팅해주어야 한다. Android App 수준 모듈에 추가해야 할 라이브러리 두 개의 라이브러리(coroutine-core, coroutine-android)를 앱 수준의 gradle에 세팅하면 안드로이드에서 코루틴을 사용하기 위한 기본적인 세팅이 완료된다. coroutines-core 라이브러리는 코루틴을 사용하기 위한 공통적인 라이브러리이다. 보통의 어플리케이션의 경우 이 라이브러리만 있으면 ..

    Gradle with Kotlin DSL

    예제파일 : https://github.com/seyoungcho2/GradleKotlinDSL Gradle with Kotlin DSL Groovy로 빌드 파일을 작성하는 것은 불편하다. 다른 곳에서 선언된 변수에 대해 자동완성이 지원되지 않고 문서 찾기가 어렵다. 실행시점 전까지 오류가 검출되지 않는다. IDE에서 제공하는 리펙터링 기능을 사용할 수 없다. (Intellij 기준 Shift+F6 을 눌러서 리펙토링 불가) 코드 작성이 제약이 약해 빌드 스크립트가 자유 분방해진다. Groovy는 같은 코드를 여러 방식으로 쓰는 것을 허용한다. 대표적 예로 문자열을 쓸 때 ' 를 쓰는 것과 "를 쓰는 것이 모두 허용되는 점이다. 왜 Kotlin DSL로 이전해야 하는가? 코드 자동완성과 참조 오류코드 강..

    [Koin] 1. Koin 이란? + 안드로이드 개발 환경 세팅

    Koin이란 Kotlin으로 DI를 공부하면서 가장 먼저 접하는 라이브러리는 Kotlin DSL로 만들어진 Koin이다. Kotlin DSL로 만들어졌다보니 Kotlin에 익숙한 개발자라면 사용하기 어렵지 않으며, Koin은 Dagger에 비해 구성요소가 복잡하지 않아서 Koin을 배우는 것은 러닝 커브가 낮다고 한다. 하지만 Koin은 리플렉션을 이용해 런타임에 오브젝트 그래프를 그려주다보니(=의존성 주입을 하다보니) 앱 성능이 저하된다는 단점이 있다. 따라서, 큰 규모의 프로젝트에서 Koin을 사용할 경우 Application이 시작될 때 의존성 그래프가 그려지다 보니 화면이 멈춘것처럼 될 수 있다. 따라서 큰 규모의 프로젝트에서는 컴파일 타임에 의존성 그래프를 그려주는 Dagger-Hilt을 이용해..

    Gradle을 Groovy에서 Kotlin DSL로 Migration 하기

    익숙하지 않은 Groovy언어로 BuildScript를 작성하는 것에 한계를 느껴 언젠가는 Kotlin DSL로 Migration해야 겠다고 생각했는데, 이번에 시간이 생겨 Migration을 진행하였다. Migration을 진행하면서 달라진 문법 구조로 인해 대형 프로젝트에서는 Migration을 진행하기 조금 어려울 수도 있겠다는 생각이 들어 정리를 할 필요성을 느끼게 되어 정리를 하게 되었다. 프로젝트 예제: https://github.com/seyoungcho2/GradleKotlinDSL seyoungcho2/GradleKotlinDSL Contribute to seyoungcho2/GradleKotlinDSL development by creating an account on GitHub. g..

반응형