Dart 언어
프로젝트의 SDK 제약 조건과 확립된 스타일에 맞는 명확한 Dart 코드를 작성하세요.
결정
- 최신 문법을 사용하기 전에
pubspec.yaml의 SDK 제약 조건을 확인하세요. - 재사용이 입증되지 않은 추상화보다는 단순한 타입과 직접적인 제어 흐름을 선호하세요.
- 철저한 분기 처리가 정확성을 향상시킬 때 sealed 타입으로 닫힌 변형을 모델링하세요.
- 작은 구조적 값에는 레코드를 사용하고, 식별성, 유효성 검사, 문서화 또는 진화가 중요한 경우 명명된 도메인 타입을 사용하세요.
- 분기 또는 비구조화를 더 명확하게 만들 때만 패턴 매칭을 사용하고, 새로운 기능을 위해 사용하지 마세요.
- 호환성 파괴 변경이 요청되지 않는 한 공개 API 호환성을 유지하세요.
- 변경 가능한 상태는 비공개로 유지하고 가능한 한 작은 유용한 표면을 노출하세요.
Effective Dart의 명명, 문서화, 사용 및 설계 지침을 따르세요. 상충되는 스타일 정책을 추가하지 말고 저장소의 린트 규칙을 준수하세요.
검증
현재 환경에서 노출된다면 Dart MCP 의미론적 조회 및 분석을 사용하고, 그렇지 않으면 소스를 검사하고 프로젝트 CLI를 사용하세요. 포맷팅, 정적 분석 및 가장 좁은 관련 테스트를 실행하세요. 공개 패키지 API를 변경하는 경우 예제와 다운스트림 호출 지점을 확인하세요.
경계
- 비동기, 스트림, 취소 및 격리(isolate):
dart-concurrency를 사용하세요. - Flutter 위젯 구성 또는 상태 소유권: 관련 Flutter 스킬을 사용하세요.
- JSON 및 영속성 스키마 동작은 해당 데이터 스킬에 속합니다.
참고
- 패턴 매칭, 비구조화, switch 표현식 또는 다중 반환을 채택할 때 패턴 및 레코드 마이그레이션을 읽으세요.
- 대수적 데이터 타입, 닫힌 결과 모델 또는 철저하게 검증된 상태 계열을 설계할 때 sealed 클래스 계층을 읽으세요.