배포 가능한 라이브러리 구조화
lib, src와 공개 API를 배치합니다
배포 가능한 라이브러리 구조화은(는) CoddyKit의 무료 Dart Academy 강의입니다. 이것은 4개 중 1번째 강의입니다. 아래에서 전체 강의를 무료로 읽을 수 있으며, 내장 코드 에디터와 24/7 AI 튜터와 함께 브라우저에서 직접 실습할 수 있습니다. 이 강의는 Dart Academy 학습 경로의 일부이며, 진행 상황이 웹과 CoddyKit 앱에 동기화됩니다. Dart Academy 강의에는 총 4개의 강의가 포함되어 있습니다.
패키지는 폴더일 뿐입니다
배포할 수 있는 Dart package는 루트에 pubspec.yaml이 있는 폴더일 뿐입니다. 이 파일 하나가 일반 코드를 pub.dev에서 호스팅할 수 있는 형태로 바꿉니다. 📦
lib 폴더는 공개 영역입니다
사용자가 import하기를 원하는 모든 항목은 lib 아래에 둡니다. lib 바로 아래의 파일은 패키지의 공개 영역에 포함되므로 신중하게 배치하세요.
lib/src에 내부 구현 숨기기
외부에 노출하지 않을 코드는 lib/src에 둡니다. 관례상 이 파일들은 공개 사용자가 직접 import하지 않는 비공개 구현 세부 사항입니다.
lib/
my_package.dart
src/
helper.dart진입점 파일
대부분의 패키지는 패키지 이름을 딴 주 파일 하나를 lib에 제공합니다. 이 entry point를 import하면 사용자가 전체 라이브러리를 한 번에 가져올 수 있습니다.
import 'package:my_package/my_package.dart';export 키워드로 다시 내보내기
진입점은 export를 사용해 lib/src에서 사용자에게 실제로 필요한 부분을 공개합니다. 깔끔하고 의도적인 공개 API 하나를 구성하는 것입니다.
export 'src/calculator.dart';
export 'src/parser.dart';공개 API를 신중하게 결정하기
내보내는 이름의 집합이 public API입니다. 모든 내보낸 기호는 사용자와의 약속이므로 작고 안정적으로 유지하세요.
밑줄은 비공개를 의미합니다
밑줄로 시작하는 이름은 Dart에서 library-private입니다. lib/src 안에서도 외부로 노출하지 않을 도우미에는 밑줄 하나를 접두사로 붙이세요.
int _internalCount = 0;example 폴더
작동하는 작은 프로그램을 담은 example 폴더를 추가하세요. 사용자가 패키지 사용법을 익히는 데 도움이 되고 pub.dev 점수도 높여 줍니다. ✨
test는 test에 둡니다
자동화된 테스트는 lib 외부의 test 폴더에 둡니다. 사용자에게 배포되지는 않지만 패키지가 약속한 대로 동작한다는 것을 입증합니다.
최상위 파일도 중요합니다
좋은 패키지 루트에는 README, CHANGELOG, LICENSE도 있습니다. 이 세 파일은 pub.dev 방문자에게 가장 먼저 보이는 항목입니다.
한눈에 보는 깔끔한 구조
모두 합치면 structure가 지도처럼 보입니다. API는 lib에, 내부 구현은 src에 두고, 여기에 example, test, 메타데이터 파일을 더합니다.
my_package/
lib/
example/
test/
pubspec.yaml빠른 확인
내부 구현 세부 사항으로 남겨야 하는 코드는 어디에 배치하나요?
복습: 정돈된 라이브러리
layout을 배웠습니다. lib에는 공개 API를 담고 lib/src에는 내부 구현을 숨기며 export로 사용자에게 보이는 항목을 선별합니다. 먼저 구조를 잡고 배포하세요. 🚀
자주 묻는 질문
“배포 가능한 라이브러리 구조화” 강의는 무료인가요?
네 — “배포 가능한 라이브러리 구조화” 전체 내용을 이 웹사이트에서 무료로 읽을 수 있습니다. 인터랙티브하게 실습하려면(내장 코드 에디터와 24/7 AI 튜터), CoddyKit PRO로 업그레이드하면 Dart Academy 강의 전체를 잠금 해제할 수 있습니다. Dart Academy 강의에는 총 4개의 강의가 포함되어 있습니다.
“배포 가능한 라이브러리 구조화”에서 뭘 배우나요?
lib, src와 공개 API를 배치합니다 브라우저에서 직접 실행하는 실습 코드로 Dart Academy을(를) 배우며, 24/7 AI 튜터가 강의를 진행하면서 질문에 답변해줍니다.
Dart Academy을(를) 시작하는 데 경험이 필요한가요?
사전 경험은 필요하지 않습니다. CoddyKit의 Dart Academy은(는) 초급자부터 고급 학습자까지를 위해 구성되어 있으므로, 여기서 시작하거나 처음부터 시작할 수 있으며 자신의 속도대로 진행할 수 있습니다. 이것은 4개 중 1번째 강의입니다.
“배포 가능한 라이브러리 구조화” 강의는 얼마나 걸리나요?
대부분의 CoddyKit 강의는 약 5~10분이 소요됩니다. 각 강의는 간결하고 인터랙티브하여 꾸준한 진행이 가능하며, 웹과 앱에서 중단한 부분부터 바로 시작할 수 있습니다.
이 Dart Academy 강의에서 코드를 작성하고 실행할 수 있나요?
네. 모든 Dart Academy 강의에는 내장 코드 에디터가 포함되어 있으므로, 브라우저에서 바로 실제 코드를 작성하고 실행한 후 즉시 AI 피드백을 받을 수 있습니다 — 로컬 설정이 필요 없습니다.