[flutter] Firebase Database와 플러터를 이용한 포트폴리오 애플리케이션 만들기

이번 블로그 포스트에서는 Firebase Database와 Flutter를 사용하여 포트폴리오 애플리케이션을 만드는 방법에 대해 알아보겠습니다.

Firebase Database란?

Firebase Database는 Google이 제공하는 클라우드 기반의 NoSQL 데이터베이스입니다. 이를 통해 애플리케이션에 데이터를 저장하고 실시간으로 동기화할 수 있습니다. Firebase Database는 JSON 구조로 데이터를 저장하며, 모바일 및 웹 애플리케이션 모두에서 사용할 수 있습니다.

Flutter 설치 및 프로젝트 설정

먼저, Flutter를 설치해야합니다. Flutter 설치 가이드는 Flutter 공식 문서에서 찾을 수 있습니다.

Flutter를 설치한 후, 다음 명령어를 사용하여 새로운 Flutter 프로젝트를 생성합니다.

flutter create portfolio_app

프로젝트가 생성되었으면, Visual Studio Code나 Android Studio와 같은 개발 도구를 이용하여 프로젝트를 열어줍니다.

Firebase 프로젝트 설정

Firebase를 사용하기 위해서는 Firebase 프로젝트를 생성해야합니다. Firebase 콘솔에 접속하여 새로운 프로젝트를 만들고, Firebase 프로젝트의 구성 파일(google-services.json 또는 GoogleService-Info.plist)을 다운로드 받아 프로젝트 폴더에 추가합니다.

Firebase 프로젝트를 생성한 후, Firebase Database를 설정해야합니다. Firebase 콘솔에서 “Database” 탭을 클릭한 후, “Create Database” 버튼을 눌러 신규 데이터베이스를 만듭니다. 데이터베이스 규칙은 기본값인 “Test Mode”를 선택하고 진행합니다.

Flutter 애플리케이션에 Firebase 종속성 추가

Flutter 애플리케이션에서 Firebase를 사용하기 위해 Firebase 종속성을 추가해야합니다. pubspec.yaml 파일을 열고 다음과 같이 firebase_corefirebase_database 패키지를 추가합니다.

dependencies:
  flutter:
    sdk: flutter
  firebase_core: ^1.6.0
  firebase_database: ^11.1.1

종속성을 추가한 후, 다음 명령어를 사용하여 패키지를 업데이트합니다.

flutter pub get

Firebase 초기화

Firebase를 Flutter 애플리케이션에 초기화해야합니다. main.dart 파일을 열고 다음 코드를 추가합니다.

import 'package:firebase_core/firebase_core.dart';

void main() async {
  WidgetsFlutterBinding.ensureInitialized();
  await Firebase.initializeApp();
  runApp(MyApp());
}

위 코드에서 Firebase.initializeApp() 메서드를 호출하여 Firebase를 초기화합니다.

데이터 읽기 및 쓰기

Firebase Database를 사용하여 데이터를 읽고 쓰는 방법에 대해 알아보겠습니다. 예를 들어, “projects”라는 데이터베이스 경로에 프로젝트 정보를 저장하고 읽는 코드는 다음과 같습니다.

import 'package:firebase_database/firebase_database.dart';

final databaseReference = FirebaseDatabase.instance.reference();

void createProject() {
  databaseReference.child('projects').set({
    'title': 'Flutter Project',
    'description': 'A portfolio app using Flutter',
  });
}

void readProject() {
  databaseReference.child('projects').once().then((DataSnapshot snapshot) {
    print(snapshot.value);
  });
}

위 코드에서 createProject() 함수는 “projects” 경로에 새로운 프로젝트 정보를 생성하고, readProject() 함수는 “projects” 경로에 저장된 프로젝트 정보를 한 번 읽고 콘솔에 출력합니다.

Firebase Database에 데이터를 저장하고 읽는 방법에 대해 더 자세히 알고 싶다면, Firebase Database 공식 문서를 참조하세요.

마무리

이제 Firebase Database와 Flutter를 사용하여 포트폴리오 애플리케이션을 만드는 방법을 알아보았습니다. Firebase를 사용하면 데이터를 저장하고 실시간으로 업데이트하는 애플리케이션을 쉽게 개발할 수 있습니다.

더 자세한 내용은 Flutter 공식 문서Firebase 공식 문서를 참조하세요.