# application-core

## 목적 / 책임

Dart 패키지의 애플리케이션 초기화, 공통 데이터 모델, 예외 처리, 공개 API 골격을 담당한다.

## 포함 경로

- `lib/core/` — 애플리케이션 실행과 공통 매니저 책임
- `lib/model/` — 공통 데이터 모델과 생성 코드
- `lib/data/` — isolate 등 실행 데이터 구조
- `lib/src/` — 패키지 기본 구현 영역
- `lib/dart_framework.dart` — 패키지 공개 진입 API

## 제외 경로

- `lib/charset/` — 문자셋 변환 전용 도메인
- `lib/subtitle/` — 자막 파싱 전용 도메인
- `lib/platform/`, `lib/utils/` — 플랫폼/유틸리티 도메인

## 주요 구성 요소

- `Application` — 앱 초기화와 zone 기반 에러 핸들링
- `AppDataManager` — 앱 데이터 관리 책임
- `AppData` — 공통 앱 데이터 모델

## 유지할 패턴

- 공개 API 변경 시 top-level export와 내부 구현의 연결을 함께 확인한다.
- `*.g.dart` 생성 파일은 원본 모델 변경 후 생성 명령으로 갱신한다.

## 다른 도메인과의 경계

- **platform-utilities**: 실제 플랫폼 I/O, 로그, 시스템 유틸은 platform-utilities에 둔다.
- **charset/subtitle**: 포맷 파싱과 인코딩 세부 규칙은 각 전문 도메인에 둔다.

## 금지 사항

- 생성 파일을 직접 수정하지 않는다.
- 애플리케이션 코어에 특정 플랫폼 전용 구현을 직접 넣지 않는다.
