본문 바로가기

안드로이드/코틀린

[Kotlin] 코틀린 시작하기

반응형

 

안녕하세요 이번 포스팅 주제는 '코틀린 시작하기' 입니다. 

코틀린에 대해 많은 분들의 관심이 쏟아지고 있고 저 역시도 시간을 할애해 틈틈이 공부하고 있습니다. 해당 포스팅은 코틀린을 시작하기 위한 환경 설정이 주된 내용입니다. 해당 포스팅은  Mac os 에서 작업되었습니다.





코틀린이란?

코틀린은 인텔리제이를 만든 젯브레인에서 만든 언어로 17년 구글 I/O에서 안드로이드 공식 지원 언어로 채택됐습니다. 관련 자세한 내용은 링크를 통해 확인 하실 수 있습니다. 

그로 인해 많은 사람들이 코틀린에 대해 관심이 높아졌고 저 역시, 도전 해보고자 코틀린을 주제로 포스팅을 시작합니다.  

참고 서적은 '커니의 코틀린' 입니다.




코틀린 시작하기

다음과 같은 2가지 방법으로 소개하겠습니다.

  • 기존 프로젝트에 코틀린 환경 세팅하기.
  • 코틀린 프로젝트 생성하기.



기존 프로젝트에 코틀린 환경 세팅하기

코틀린 플러그인이 설치 되어 있는지 확인하고 install 및 update를 진행합니다.

( 안드로이드 스튜디오 3.0 버전의 경우 기본적으로 설치되어 있습니다.)


Android Studio - > Prferences 을 선택합니다.


plugins - > install JetBrains plugin... 을 선택합니다.


Kotiln 을 검색해 'install' 및 'update'를 진행해주세요. 설치및 업데이트가 종료되면 'restart'를 선택해 설치를 완료하세요.



코틀린 사용

코틀린을 프로젝트에서 사용하는 방법은 2가지가 있습니다.

  • gradle 파일 직접 수정
  • 코틀린 파일 생성 

해당 포스팅에서는 2번째 방법을 사용하겠습니다.


코틀린 파일 생성

코틀린 파일을 자신의 패키지 내부 원하는 곳에 생성합니다. ( 마우스 우클릭 - > new -> kotlin file )

파일이 생성되면 나타나는 상단에 Configure를 선택해 환경을 설정하세요


환경 설정하기

아래 나온 창의 타이틀과 같이 안드로이드에 코틀리을 사용하기 위한 gradle을 설정하는 창 같습니다.

별 다른 조작 없이 'OK' 버튼을 눌러줍니다. 



Gradle Sync Now

환경 설정으로 인해 변경된 gradle(project 단) 파일에서 우 상단 'Sync Now'를 통해 프로젝트 싱크를 맞춰주세요.



소스 변화

전 단계의 싱크가 모두 맞춰지면 프로젝트에서 코틀린을 사용하기 위한 환경설정은 모두 종료 됐습니다.

코틀린 추가로 인한 gradle파일의 변경 사항을 확인 하겠습니다.



gradle(project단)

변경 전 

// Top-level build file where you can add configuration options common to all sub-projects/modules.

buildscript {

repositories {
google()
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:3.0.0'


// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}

allprojects {
repositories {
google()
jcenter()
}
}

task clean(type: Delete) {
delete rootProject.buildDir
}

변경후

// Top-level build file where you can add configuration options common to all sub-projects/modules.

buildscript {
ext.kotlin_version = '1.2.10'

repositories {
google()
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:3.0.0'
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"

// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}

allprojects {
repositories {
google()
jcenter()
}
}

task clean(type: Delete) {
delete rootProject.buildDir
}


gradle(app단)

변경 후

※app단 gradle 파일의 변경전 소스는 따로 기재하지 않겠습니다.

apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'

android {
compileSdkVersion 26
defaultConfig {
applicationId "packageName"
minSdkVersion 15
targetSdkVersion 26
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}

dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'com.android.support:appcompat-v7:26.1.0'
implementation 'com.android.support.constraint:constraint-layout:1.0.2'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.1'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.1'


.......
compile "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
}
repositories {
mavenCentral()
}


이후 코틀린 파일을 생성하고 자바로 작성된 코드를 붙여 넣으면 컨버팅 할지 의사를 묻는 팝업창이 뜹니다. 

'OK'를 누르면 코틀린으로 변환된 소스를 확인할 수 있습니다.



코틀린 프로젝트 시작하기

프로젝트 생성시 아래와 같이 'include kotlin support'를 체크한 후 생성하시면 됩니다.


이상으로 포스팅을 마치겠습니다.



코틀린 개발 관련 Q&A방을 생성했습니다. 개발하면서 겪는 어려움을 같이 해결해나가요

오픈채팅방



해당 포스팅은 지극히 주관적인 내용으로 저자의 복기 목적으로 작성된 것이고, 내용에대해 수정이나 추가 요청은 언제든 환영합니다. 


반응형