플러터(Flutter)로 라이브러리 만들기

플러터(Flutter)를 공부하다가 문득 라이브러리 만드는 법이 궁금해졌다.

여러 개발 언어에서는 함께 쓰기 좋게 모듈화 된 공통 라이브러리 같은 모듈을 만들어 쓰는데 플러터(Flutter)에서는 어떨지 궁금해서 찾아보고 정리해 본다.

플러터(Flutter) 라이브러리의 필요성

보통 작성 중인 다트(Dart) 파일에 다른 파일의 객체나 인스턴스를 가져다 쓸 때 아래와 같이 import 구문으로 사용한다.

a.dart

String a = 'Data-a';

b.dart

String b = 'Data-b';

main.dart

import 'a.dart';
import 'b.dart';

void main() {
  print('$a,$b');
}

그런데 파일이 엄청 많다면 어떨까요? 네. 엄청 불편합니다. 그래서 라이브러리는 여러 파일로 만들어도 다트(Dart) 파일 1개로 불러와 편하게 사용할 수 있습니다.

플러터(Flutter) 라이브러리 만들기

이렇게 여러 파일을만들지만 1개의 다트(Dart) 파일로 불러올 수 있게 하기 위해서 part, part of 예약어를 이용합니다.

a, b 다트(Dart) 파일을 작성하고 두 파일을 library 다트(Dart) 파일에 포함해 외부에서 이용할 때 library 파일만 불러와 사용할 수 있게 합니다.

a.dart

part of 'example_library.dart';

String a = 'Data-a';

자신이 example_library.dart 의 부분임을 선언 합니다.

b.dart

part of 'example_library.dart';

String b = 'Data-b';

자신이 example_library.dart 의 부분임을 선언 합니다.

example_library.dart

library;

part 'a.dart';
part 'b.dart';

자신이 라이브러리(library)임을 선언 하고 a.dart 와 b.dart 가 자신의 부분들임을 선언 합니다.

main.dart

import 'example_library.dart';

void main() {
  print('$a,$b');
}

라이브러리 파일인 example_library.dart 만 import 하면 a.dart 와 b.dart 파일의 내용까지 접근 가능합니다.


참고

티스토리-Flutter 기본 기능 | as, show, hide | 변수나 함수, 클래스명이 같은 경우 해결 방법 | example

댓글 남기기