본문 바로가기

Language35

Kotlin에서 람다의 라벨링 Kotlin은 함수와 람다를 매우 강력하게 지원하는 언어입니다. 때로는 람다 안에 람다, 또는 여러 개의 람다를 중첩해서 사용하는 경우도 많습니다. 이럴 때, 특정 람다의 return을 원할 때 또는 특정 람다를 참조하고 싶을 때, 람다에 라벨링을 사용하게 됩니다. 라벨링의 필요성 람다 내부에서 return 키워드를 사용하면, 기본적으로 가장 깊은 람다를 빠져나오게 됩니다. 이를 '비로컬 리턴'이라고 부릅니다. 그러나 때로는 바로 상위의 람다나 특정 람다에서만 리턴하고 싶을 경우가 있습니다. 이럴 때 라벨을 사용하면 특정 람다의 범위에서만 return을 할 수 있습니다. 라벨링의 사용법 라벨은 @라벨이름 형식으로 작성하며, 람다 앞에 붙여 사용합니다. 예제를 통해 자세히 알아보겠습니다. fun main(.. 2023. 8. 23.
Builder 패턴이란? (feat. Kotlin의 코드 간결성 찬양) Builder 패턴은 객체 생성 과정과 표현 방식을 분리하여 동일한 생성 절차에서 서로 다른 표현 결과를 생성할 수 있게 하는 패턴입니다. 복잡한 객체의 생성과정을 단계별로 나눠 명확하게 표현하며, 필요한 경우에만 특정 메소드를 호출하여 객체를 생성할 수 있습니다. Java에서의 Builder 패턴 예제 public class Computer { private String CPU; private String RAM; private String storage; private Computer(Builder builder) { this.CPU = builder.CPU; this.RAM = builder.RAM; this.storage = builder.storage; } public static class B.. 2023. 8. 17.
Kotlin의 코드 간결성 (Lombok과 유사한 기능들 비교) Lombok은 Java의 보일러플레이트 코드를 줄이기 위해 만들어진 라이브러리입니다. 반면, Kotlin은 보일러플레이트 코드를 줄이기 위해 처음부터 설계된 언어입니다. Kotlin 자체적으로 데이터 클래스, 확장 함수 등과 같은 기능을 제공하여 Java의 Lombok과 같은 라이브러리가 필요하지 않게 만들었습니다. 따라서, Kotlin에서 Lombok을 사용하는 것은 권장되지 않습니다. Kotlin의 기능만으로도 Lombok에서 제공하는 대부분의 기능을 쉽게 사용할 수 있기 때문입니다. 예제 코드 비교: 1. Lombok을 사용한 Java 코드 import lombok.Data; // @Data 어노테이션은 @Getter, @Setter, @RequiredArgsConstructor, @ToString.. 2023. 8. 17.