Android Studio를 통해서 새로운 Flutter 프로젝트를 생성한다면 다음과 같은 구조를 확인할 수 있다.
.idea : 개발 도구에 필요한 설정이 구성되는 경로
andriod : 안드로이드 네이티브 코드가 작성되는 경로로써 플러터를 통해 컴파일되어 생성된 안드로이드 앱에 대한 소스코드가 구성되는 경로
ios : iOS 네이티브 코드가 작성되는 경로로써 플러터를 통해 컴파일되어 생성된 iOS 앱 소스코드가 구성되는 경로
마찬가지로 linux, macos, web, windows 경로들 또한 각 환경에 맞게 컴파일되어 생성된 앱의 소스코드가 구성되는 경로로 이해할 수 있다.
lib : 앱 개발시 가장 많이 이용하게 되는 경로로써 플러터를 통한 앱 개발시 가장 기본이되는 소스코드 (.dart 파일)가 구성되는 경로이며 프로젝트의 기본 경로이다.
test : 앱 개발 시 테스트 코드를 작성하여 테스트 할 때 이용되는 경로.
.gitignore : Git 설정 파일
.metadata : 플러터 프로젝트를 위한 내부 파일, 프로젝트가 관리하는 파일로 임의로 수정하거나 편집하지 않는다.
프로젝트명.iml : 개발 도구에 필요한 설정 파일로 프로젝트의 내부 파일. 마찬가지로 임의로 수정하거나 편집하지 않는다.
pubspec.lock : 패키지 매니저가 이용하는 파일로 임의로 수정하거나 편집하지 않는다.
pubspec.yaml : 패키지 매니저가 이용하는 파일로, 플러터 프로젝트에 필요한 라이브러리와 리소스(이미지, 폰트, 미디어) 등을 지정할때 이용한다. pubspec 파일은 프로젝트의 메타데이터를 정의하고 관리하는 파일로 프로젝트의 버전, 프로젝트의 사용환경 또한 dart의 버전이나 각종 dependencies와 3rd party 라이브러리등을 정의한다.
README.md : 프로젝트에 대한 설명을 작성하는 파일.
*yaml 파일.
YAML 파일은 유니코드 기반 데이터 직렬화 언어인 YAML(YAML Ain’t Markup Language) 언어로 구성된 파일로 시스템 간에 데이터를 주고 받을 때 사용하는 파일로써 이용된다. json, xml 파일과 유사한 파일.