코틀린 data class: 실무에서 어디까지 쓸까
Kotlin data class는 짧게 쓰기 편한 문법처럼 보이지만, 실제로는 equals, copy, componentN이 함께 움직이는 값 중심 설계 도구에 가깝습니다. 이 글에서는 query 객체, UI state, mutable list 예제로 data class가 어디까지 편하고 어디서부터 조심해야 하는지 실무 기준으로 정리합니다.
Kotlin data class는 짧게 쓰기 편한 문법처럼 보이지만, 실제로는 equals, copy, componentN이 함께 움직이는 값 중심 설계 도구에 가깝습니다. 이 글에서는 query 객체, UI state, mutable list 예제로 data class가 어디까지 편하고 어디서부터 조심해야 하는지 실무 기준으로 정리합니다.
애드혹 문제에서 경우를 나눠야 하는 순간은 예외가 많아서가 아니라 답의 구조가 바뀌기 때문입니다. 구간 안팎과 원형 거리 예시로 좋은 케이스 분리 기준, 억지 분기를 피하는 법, 경계값 반례 검증법까지 intuition-first로 정리합니다.
클린 아키텍처가 왜 어렵게 느껴지는지, 계층보다 의존 방향이 왜 핵심인지, 그리고 무엇을 먼저 분리해야 하는지 실무 기준으로 정리합니다.
자바 Comparable과 Comparator 차이를 정의가 아니라 실전 정렬 장면으로 설명합니다. natural ordering, 외부 정렬 기준, comparing 헬퍼, TreeSet 함정까지 한 번에 정리합니다.
AI 코딩 에이전트는 왜 중간에 엉뚱한 파일을 건드리고 같은 일을 반복할까요? task drift, context loss, tool result reflection failure 관점에서 계획보다 상태 관리가 더 중요한 이유를 정리합니다.
해시 테이블이 왜 빠른지 average O(1) 암기에서 벗어나 버킷, 해시 함수, 충돌, 리사이징 직관으로 설명합니다. 배열과 연결 리스트만으로는 부족한 이유까지 함께 정리합니다.