Blog
Posts
작성한 모든 글.
Kotlin
suspend 함수는 어떻게 스레드를 막지 않고 멈출까: CPS 변환과 상태 머신
suspend 함수가 컴파일될 때 Continuation 파라미터가 추가되고 반환 타입이 Any? 로 바뀌는 CPS 변환, COROUTINE_SUSPENDED 와 label 기반 상태 머신, 재개 흐름을 디컴파일 결과와 애니메이션으로 따라가고 Dispatcher 와 구조적 동시성까지 짚습니다.
Dart
Dart 3 class modifier 와 sealed, 완전성 검사로 닫는 타입 계층
Dart 3 의 class modifier(abstract, base, interface, final, sealed, mixin class)가 각각 무엇을 막는지 표로 정리하고 sealed 와 switch 표현식·패턴·records 를 조합해 완전성 검사를 받는 방법과 Kotlin sealed 와의 차이를 설명합니다.
Java
Java 21 가상 스레드, 플랫폼 스레드와 carrier 의 관계 (JEP 444)
JDK 21 에서 정식 기능이 된 가상 스레드가 플랫폼 스레드와 어떻게 다른지, carrier 스레드에 mount/unmount 되는 과정과 pinning, 풀링 금지, ThreadLocal 주의점, 어울리는 작업의 범위를 정리하고 Kotlin 코루틴과 비교합니다.
추천 ·알고리즘
정렬 알고리즘 여섯 가지를 같은 입력으로 돌려 봤습니다 (Kotlin)
버블·선택·삽입·병합·퀵·힙 정렬을 16개 숫자 애니메이션과 Kotlin 구현으로 나란히 보고, 복잡도와 안정성, 그리고 실무에서는 결국 무엇을 쓰는지까지 정리했습니다.