Category language

생산자 – 소비자 문제와 BlockingQueue

문제 정의 생산자 – 소비자 문제는 한정된 크기의 버퍼를 통해 데이터를 주고 받는 멀티스레드 환경에서 발생하는 동시성 문제이다 핵심 문제 해결 방안의 진화 단순 synchronized (문제 발생) sleep()으로 대기 (더 심각한 문제) wait/nofity 사용 (비효율 존재) Lock + Condition으로 개선…

Kotlin – Scope Function

코틀린을 배우기 위해서 인프런에서 강의를 구매하고 코틀린과 친해지고 기본기를 다지기 위해서 공부하는 중이다. 글 내용은 Kotlin의 Scope Function이고 최태현님의 자바 개발자를 위한 코틀린 입문(Java to Kotlin Starter Guide) 강의에 소금을 조금 친 내용이다 코드를 간결하게 해주는 Scope Function 코틀린의 Scope Function은 일시적인…

Kotlin – 여러 가지 면모

코틀린을 배우기 위해서 인프런에서 강의를 구매하고 코틀린과 친해지고 기본기를 다지기 위해서 공부하는 중이다. 글 내용은 Kotlin의 이모저모(사물의 이런 면 저런 면)이고 최태현님의 자바 개발자를 위한 코틀린 입문(Java to Kotlin Starter Guide) 강의에 소금을 조금 친 내용이다 Type Alias 함수 타입 축약 기존…

Kotlin – Java와 함께 컬렉션 사용하기

코틀린을 배우기 위해서 인프런에서 강의를 구매하고 코틀린과 친해지고 기본기를 다지기 위해서 공부하는 중이다. 글 내용은 배열과 컬렉션 중 Kotlin, Java와 함께 Collection을 다루는 방법이고 최태현님의 자바 개발자를 위한 코틀린 입문(Java to Kotlin Starter Guide) 강의에 소금을 조금 친 내용이다 Kotlin과 Java는 상호…

Kotlin 배열과 컬렉션을 다루는 방법

코틀린을 배우기 위해서 인프런에서 강의를 구매하고 코틀린과 친해지고 기본기를 다지기 위해서 공부하는 중이다. 글 내용은 배열과 컬렉션을 다루는 방법이고 최태현님의 자바 개발자를 위한 코틀린 입문(Java to Kotlin Starter Guide) 강의에 소금을 조금 친 내용이다 배열(Array) Kotlin에서 배열은 Array 클래스로 표현되며, 고정된 요소를…

Kotlin 다양한 클래스를 다루는 방법

코틀린을 배우기 위해서 인프런에서 강의를 구매하고 코틀린과 친해지고 기본기를 다지기 위해서 공부하는 중이다. 글 내용은 다양한 중첩 클래스를 다루는 방법이고 최태현님의 자바 개발자를 위한 코틀린 입문(Java to Kotlin Starter Guide) 강의에 소금을 조금 친 내용이다 Kotlin은 간결하고 표현력 있는 코드를 작성할 수…

Kotlin 중첩 클래스를 다루는 방법

코틀린을 배우기 위해서 인프런에서 강의를 구매하고 코틀린과 친해지고 기본기를 다지기 위해서 공부하는 중이다. 글 내용은 중첩 클래스를 다루는 방법이고 최태현님의 자바 개발자를 위한 코틀린 입문(Java to Kotlin Starter Guide) 강의에 소금을 조금 친 내용이다 클래스 안에 또 다른 클래스를 정의하는 것을 중첩…

Kotlin Object 키워드를 다루는 방법

코틀린을 배우기 위해서 인프런에서 강의를 구매하고 코틀린과 친해지고 기본기를 다지기 위해서 공부하는 중이다. 글 내용은 Object 키워드를 다루는 방법이고 최태현님의 자바 개발자를 위한 코틀린 입문(Java to Kotlin Starter Guide) 강의에 소금을 조금 친 내용이다 코틀린에서 object 키워드는 자바에는 없는 독특한 기능을 제공하며,…

Kotlin 접근 제어를 다루는 방법

코틀린을 배우기 위해서 인프런에서 강의를 구매하고 코틀린과 친해지고 기본기를 다지기 위해서 공부하는 중이다. 글 내용은 접근 제어를 다루는 방법이고 최태현님의 자바 개발자를 위한 코틀린 입문(Java to Kotlin Starter Guide) 강의에 소금을 조금 친 내용이다 Kotlin의 접근 제어는(Visibility Modifiers)는 Java와 유사하지만, package의 역할이나…

Kotlin 리팩토링 groupBy, Map 그리고 DB

가변적인 요소들과 긴 콜체인으로 복잡했던 코드를 Kotlin의 컬렉션 처리 함수인 groupBy와 map을 활용하여 간결하고 불변성을 유지할 수 있다 BookStatResponse (가변과 함수) if-else를 활용한 일반(?)적인 코드 Nullable과 Elvis Operation을 활용한 리팩토링 코드 BookStatResponse (불변) groupBy와 Map을 활용한 리팩토링 코드 애플리케이션신 DB로…