본문 바로가기
개발 공부 Today I Learned

[국비 TIL] 코틀린 기초

by 개발자신입 2024. 5. 2.
반응형

코틀린 (Kotlin)

코틀린은 안드로이드 스튜디오에서 공식적으로 지원되는 프로그래밍 언어로, 자바에 비해 간결하고 생산성 높은 코드를 작성할 수 있습니다.

  1. 코틀린 소개
    • 코틀린은 2011년 JetBrains에서 발표한 프로그래밍 언어로, 자바 가상 머신(JVM) 위에서 동작합니다.
    • 자바와 100% 호환되며, 기존 안드로이드 프로젝트에도 쉽게 통합할 수 있습니다.
  2. 간결한 문법
    • 코틀린은 간결하고 명확한 문법을 가지고 있어, 자바보다 코드를 작성하는 데 더 적은 노력이 필요합니다.
    • 널 안전성을 지원하여 NullPointerException을 방지할 수 있습니다.
  3. 확장 함수와 람다식
    • 코틀린은 확장 함수를 지원하여 기존 클래스에 새로운 함수를 추가할 수 있습니다.
    • 람다식을 지원하여 함수형 프로그래밍을 쉽게 구현할 수 있습니다.
  4. 널 안전성
    • 코틀린은 널 포인터 예외를 방지하기 위해 기본적으로 널 안전성을 지원합니다.
    • 안전한 호출(?.), 엘비스 연산자(?:) 등을 활용하여 코드를 안전하게 작성할 수 있습니다.
  5. 코루틴(Coroutines)
    • 비동기 프로그래밍을 위한 코루틴을 제공하여 쉽고 효율적으로 비동기 코드를 작성할 수 있습니다.
    • 코루틴을 사용하면 콜백 지옥(callback hell)을 피하고 간결한 코드를 유지할 수 있습니다.

코틀린 기초 문법

  1. 변수 선언과 초기화
    • 변수를 선언할 때는 var(가변) 또는 val(불변) 키워드를 사용합니다.
    • var 키워드를 사용하면 변수의 값을 변경할 수 있지만, val 키워드를 사용하면 값을 변경할 수 없습니다.
    var x: Int = 10  // 가변 변수 선언과 초기화
    val y: String = "Hello"  // 불변 변수 선언과 초기화
  2. 자료형
    • 코틀린은 정적 타입 언어이며, 변수의 자료형을 명시적으로 지정해야 합니다.
    • 기본 자료형으로는 Int, Long, Float, Double, Boolean, Char 등이 있습니다.
    var num: Int = 20
    val pi: Double = 3.14
  3. 조건문 (if-else)
    • if 문은 일반적인 프로그래밍 언어와 같이 사용할 수 있습니다. 단, 조건식을 괄호로 둘러싸지 않아도 됩니다.
    val score = 85
    if (score >= 90) {
        println("A 학점")
    } else if (score >= 80) {
        println("B 학점")
    } else {
        println("C 학점")
    }
  4. 반복문 (for, while)
    • for 문은 in 연산자를 사용하여 컬렉션을 순회하거나 범위를 지정할 수 있습니다.
    for (i in 1..5) {
        println(i)  // 1부터 5까지 출력
    }
    
    var x = 0
    while (x < 5) {
        println(x)
        x++
    }
  5. 함수
    • 함수는 fun 키워드로 선언하며, 반환 타입을 명시할 수 있습니다. 반환 타입이 Unit인 경우 생략할 수 있습니다 (기본 값은 void).
    fun add(a: Int, b: Int): Int {
        return a + b
    }
    
    fun greet(name: String): Unit {
        println("Hello, $name!")
    }
  6. Nullable 타입
    • 코틀린에서는 기본적으로 null을 허용하지 않는데, 특정 변수를 null로 허용하려면 타입 뒤에 ?를 붙입니다.
    var str: String? = null

 

반응형

댓글