본문으로 바로가기

Flutter 프로젝트를 효과적으로 개발하기 위해서는 기본 구조를 이해하는 것이 중요합니다. 다음은 주요 구성 요소들입니다

  • 프로젝트 폴더 구조
    • 플랫폼별 폴더 (android, ios, linux, macos, web, windows): 각 플랫폼에 필요한 네이티브 코드 포함
    • lib 폴더: 주요 Dart 코드가 위치하는 곳
    • pubspec.yaml: 프로젝트 설정, 의존성, 리소스 등을 관리하는 파일
  • 시작점 (Entry Point)
    • lib/main.dart 파일의 main() 함수가 앱의 시작점
    • 새 프로젝트 시작 시 기본 예제 코드는 삭제하고 시작하는 것이 일반적

패키지와 임포트

  • 패키지: Flutter와 커뮤니티에서(다른 개발자들) 제공하는 재사용 가능한 코드 모듈
  • import 문으로 필요한 패키지와 위젯을 프로젝트에 추가
  • 패키지 종류:
    • Dart 기본 패키지 (예: import 'dart:math')
    • Flutter 제공 패키지 (예: import 'package:flutter/material.dart')
    • 외부 또는 사용자 정의 패키지 (예: import '../models/mypackage.dart')
import 'package:package_name/패키지경로/패키지명.dart';

main()과 runApp() 함수

  • Flutter 앱 시작 시 main() 함수 내의 runApp() 함수가 호출되어 앱 실행
// 안드로이드 UI 와 유사한 머티리얼 디자인 위젯을 사용하기 위해 import 구문 추가
import 'package:flutter/material.dart';

void main() {
	// 일반적으로 MyApp() 등의 클래스를 정의하여, 플러터 프로젝트를 실행함
	runApp(const MyApp()); 
}

참고: 신규 프로젝트 작성 시 많이 추가하는 설정

  • analysis_options.yaml 파일에 다음 설정 (코드 가이드를 disable 시키는 설정)
rules:
  prefer_typing_uninitialized_variables : false
  prefer_const_constructors_in_immutables : false
  prefer_const_constructors : false
  avoid_print : false

'Flutter' 카테고리의 다른 글

스프링 JWT 적용  (1) 2024.11.20
서비스의 인증과 권한 부여  (0) 2024.11.20
플러터 기본기 다지기 - 나만의 Flutter 위젯 분류  (0) 2024.11.19
플러터 기본기 다지기 - 1  (1) 2024.11.18
Retrofit 구현과 활용  (0) 2024.11.15