LLM 기능을 서비스에 붙일 때 도메인 로직과 AI 호출은 어떻게 분리해야 할까
LLM 기능을 기존 서비스에 붙일 때 application service, AI client, prompt template, fallback, audit log, retry 경계를 어떻게 나눌지 실무 구조 중심으로 설명합니다.
LLM 기능을 기존 서비스에 붙일 때 application service, AI client, prompt template, fallback, audit log, retry 경계를 어떻게 나눌지 실무 구조 중심으로 설명합니다.
Hilt assisted injection이 필요한 상황을 SavedStateHandle, ViewModel 런타임 파라미터, factory 기준으로 나눠 설명합니다. 화면 인자와 DI 의존성을 구분해 불필요한 복잡도를 줄이는 방법을 정리합니다.
429 Too Many Requests를 단순 차단 응답이 아니라 rate limit 정책, Retry-After, token bucket, sliding window, 사용자/API key별 제한 관점에서 설계하는 방법을 설명합니다.
Outbox pattern이 DB commit과 메시지 발행 사이 실패를 줄이는 이유를 polling publisher, CDC, idempotent consumer 관점으로 설명합니다.
rememberSaveable과 SavedStateHandle을 UI 상태, ViewModel, navigation argument, process death 관점에서 언제 나눠야 하는지 설명합니다.
repeatOnLifecycle 없이 Flow를 collect할 때 생길 수 있는 lifecycle, 중복 collect, 화면 비활성 상태 업데이트 문제를 collectAsStateWithLifecycle과 함께 설명합니다.