method

    [Kotlin] fun interface와 SAM(Single Abstract Method) 한 번에 정리하기

    SAM(Single Abstract Method) 인터페이스란? SAM 인터페이스는 이름 그대로, 하나의 추상 메서드만을 가진 인터페이스이다. 예를 들어 다음과 같이 SAMSample 인터페이스를 만들고 내부에 foo 함수 하나만을 넣는다면, 이것은 SAM 인터페이스가 된다. fun interface SAMSample { fun foo() } *Kotlin 1.4 이후부터는 SAM 인터페이스를 사용하기 위해서는 fun interface 키워드를 사용해야 한다. *Kotlin 1.4부터는 Java의 SAM 인터페이스에 대해 자동으로 SAM 변환을 지원한다. SAM 인터페이스가 중요한 이유는 이러한 SAM 인터페이스는 Kotlin의 함수형 프로그래밍을 깔끔하게 만들어주는 역할을 하기 때문이다. 기본적으로 인..

    Gradle을 위한 Groovy 문법 한 번에 정리하기 : Data Type, String, Closure, Collection, Method, Class

    Groovy란? Groovy란 JVM위에서 동작하는 동적 타입 프로그래밍 언어이다. Java뿐만 아니라 Python, Ruby 등에 많은 영향을 받은 프로그래밍 언어로 문법이 간결하다. 하지만, 사실상 대부분 Gradle Script를 작성하기 위해 사용되고 있으며, Gradle Kotlin이 등장하고 나서는 Gradle Groovy를 Gradle Kotlin으로 많이 전환하는 추세이다. Java 생태계의 대부분인 Android나 Spring이 Kotlin으로 작성 가능한데, Build Script 작성을 위해 별도의 언어를 배운다는 점이 부담스럽기 때문이다. 또한 Groovy는 별도로 프로젝트를 구성하지 않으면 자동완성이 안된다는 문제가 있어 자동완성이 되는 Kotlin으로 빌드 스크립트를 작성하는 것..

    Kotlin의 가시성 변경자(접근 제한자) : public, internal, protected, private

    목적 최상위 선언의 가시성 변경자에 대해 이해한다. 클래스 멤버의 가시성 변경자에 대해 이해한다. 가시성 변경자 가시성 변경자는 클래스에 대한 외부 접근 권한을 제어한다. Kotlin에서는 4가지 가시성 변경자를 제공한다. public internal protected private Kotlin에서는 최상위 선언에서의 가시성 변경자와 클래스 멤버 선언에서의 가시성 변경자의 접근성이 달라진다. 먼저 공통적으로 적용되는 가시성 변경자인 public에 대해 알아보자. public public은 기본 가시성 변경자로, 어디에서나 접근 가능한 가시성 변경자이다. Kotlin에서는 아무것도 쓰지 않을 때 public이 기본 가시성 변경자로 설정된다. 이는 가시성 변경자를 쓰지 않을 때 default라는 별도의 가시..