flutter_note002 플러터 프로젝트 구성요소 이해하기

5yattree·2022년 12월 15일
2

Flutter 정리 노트

목록 보기
2/13

플러터 프로젝트 구성요소 ( Flutter project structure)

Android Studio를 통해서 새로운 Flutter 프로젝트를 생성한다면 다음과 같은 구조를 확인할 수 있다.

<경로 Paths>

.idea : 개발 도구에 필요한 설정이 구성되는 경로
andriod : 안드로이드 네이티브 코드가 작성되는 경로로써 플러터를 통해 컴파일되어 생성된 안드로이드 앱에 대한 소스코드가 구성되는 경로
ios : iOS 네이티브 코드가 작성되는 경로로써 플러터를 통해 컴파일되어 생성된 iOS 앱 소스코드가 구성되는 경로

마찬가지로 linux, macos, web, windows 경로들 또한 각 환경에 맞게 컴파일되어 생성된 앱의 소스코드가 구성되는 경로로 이해할 수 있다.

lib : 앱 개발시 가장 많이 이용하게 되는 경로로써 플러터를 통한 앱 개발시 가장 기본이되는 소스코드 (.dart 파일)가 구성되는 경로이며 프로젝트의 기본 경로이다.

test : 앱 개발 시 테스트 코드를 작성하여 테스트 할 때 이용되는 경로.

<파일 Files>

.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 파일과 유사한 파일.

출처: https://www.inflearn.com/questions/16184/yaml%ED%8C%8C%EC%9D%BC-%EC%9D%B4%EB%9E%80-%EB%AC%B4%EC%97%87%EC%9D%B8%EA%B0%80%EC%9A%94

  • xml 파일의 객체, 리스트, 키와 값들이 표현되는 예시.
    xml은 데이터를 표현하기 위해서 기존에 많이 사용되어 온 방식으로 HTML과 흡사한 구조를 가지고 있으며, xml 파일은 <> '꺽쇠' 태그를 통해 데이터를 표기하며 트리(tree) 계층 구조를 가지고 있고 루트(Root) 요소부터 시작해 여러 개의 자식을 계층적으로 포함하게 된다.

  • json 파일의 객체, 리스트, 키와 값들이 표현되는 예시.
    json(JavaScript Object Notation) 파일 또한 xml 파일과 같이 데이터를 처리하기 위한 파일 형식으로 xml 파일과 다르게 꺽쇠 형태의 태그로 데이터를 표기하지 않고 '대괄호'{} 와 큰 따옴표를 이용해 계층형 구조를 형성한다는 특징이 있다.

  • yaml 파일에서의 객체, 리스트, 키와 값들이 표현되는 예시.
    yaml 파일 또한 json과 비슷하지만 비교적 사람이 더 읽기 쉬운 형태로 데이터 표현된다. yaml 파일은 ' 개행', '공백'으로 블록을 인식하며 공백 위주로 데이터를 구분하므로 한 줄로 작성할 수 없다는 특징이 있다. 추가적으로 yaml 파일의 경우 한글과 같은 유니코드를 그대로 사용할 수 있다는 장점과 상속(inherit) 기능을 사용할 수 있어 코드의 양이 효과적으로 줄일 수 있다. 다만 작성 시 '공백'으로 블록을 인식하기에 들여쓰기, 인덴트(indentation)가 굉장히 중요하다. 만일 작성시 들여쓰기가 잘못되면 제대로 인식하지 못하므로 작성에 주의가 필요하다.

  • 위의 xml, json 파일과 비교하여 살펴볼 때 yaml 파일의 경우 다른 파일들 보다 그 작성이 비교적 단순하고 가독성이 뛰어나다는 것을 알 수 있다.
profile
오얏나무 한 그루

0개의 댓글