lib 폴더Dart 소스코드를 작성하는 곳test 폴더lib 폴더 아래의 작성한 Dart 코드를 테스트하기 위한 코드를 작성하기 위한 곳android, ios, linux, macos, web, windows 폴더Android, IOS) 등에서 표시되는 이름 및 아이콘 등 수정pubspec.yamlpub.dev의 패키지들을 사용하기 위해 이 파일 내에 추가하여 사용할 수 있습니다. 또한 앱 내에서 사용한 정적 이미지, 폰트 파일들의 위치를 선언할 수 있습니다. 사용방법은 뒤에 다루겠습니다.pubspec.lockpubspec.yaml 파일에 패키지를 추가 후 패키지를 받으면 사용된 패키지들의 구성을 정의하며 버전들을 기록해두는 곳입니다. 개발자가 직접 수정할 일은 없으며 패키지 추가 시 자동으로 구성됩니다..gitignoregit repository에 올릴 시 올리지 않아도 되는 파일을 명시해 두는 곳입니다. 특정한 파일이름, 확장자, 디렉토리 등을 지정해 둘 수 있으며 이곳에 명시해 두면 git repository에 업로드 시 업로드가 되지 않습니다. 노출되면 안되는 API 키 파일을 저장해둔 파일이나 IDE 의 설정파일 등을 추가해 놓습니다.analysis_options.yamlIDE에서 파란색, 노란색 등의 밑줄을 뜨는것을 볼 수 있습니다. 해당 밑줄은 코드 린트(코드 가이드. 코드의 가독성 및 오류 발생 방지 등을 방지하기 위해 사용하는 가이드)에 의해서 띄워주는 것인데 무시해도 되는 규칙 등을 저장해놓는 것입니다. 현재 단계에선 이런게 있구나 정도로만 기억하고 넘어가시면 충분합니다. .metadata.dart_tool. git 저장소에 올라가지 않게 디폴트로 설정되어 있습니다.ideaIDE의 프로젝트 별 세팅 정보들이 들어가있으며 dart_tool 과 마찬가지로 git 저장소에 올라가지 않음.imlgit 저장소에 올라가지 않음README.md
GPS 기능을 코드 몇줄로 사용할 수 있게 해놓은 geolocator 패키지 pubspec.yaml 파일 dependencies 항목 아래 패키지명: 버전넘버 형식으로 작성
- http통신을 위한 http 패키지의 1.2.2 버전을 작성하기 위해서는 아래와 같이 작성
- 최신버전으로 변경시 번거로움. 이때, 들여쓰기 주의할 것
⭕
❌
⇒ 여러 패키지들을 사용할 때 서로 같은 패키지를 사용해 패키지를 만든 경우 버전 충돌이 일어날 수 있기 때문. 따라서 아래와 같은 방식을 사용함.


* 버전이 내환경에 맞게 알아서 설정됨.
main.dartWidget들을 모아서 하나의 위젯으로 만들기도 함StatelessWidget 과 StatefulWidget이 있으며 build함수 내에서 구성을 dart코드로 작성Flutter 앱의 최상단에 선언해 사용MaterialApp은 Google의 디자인CupertinoApp은 Apple의 디자인MaterialApp이 앱의 기본적인 구조와 디자인을 잡아준다면 Scaffold는 각 페이지의 구조를 잡아주는 위젯AppBar, BottomNavigation, FloatingActionButton 등의 구조를 제공body속성에 선언해 사용
가능하지만, 이미 사용자들이 익숙한 디자인과 구조를 구현해 놓았기 때문에 Scaffold를 사용하면 사용자 경험에 고민할 시간을 줄일 수 있습니다.
MaterialApp은 그림일기장. Scaffold는 그림일기장의 각 페이지!