[flutter] get_it을 활용한 모듈화 개발 방법

Flutter 앱을 개발할 때 코드를 모듈화하여 유연하고 재사용 가능한 구조를 구축하는 것은 매우 중요합니다. 이 글에서는 Flutter 앱에서 get_it 패키지를 활용하여 모듈화된 앱을 개발하는 방법에 대해 알아보겠습니다.

get_it이란?

get_it은 의존성 주입(Dependency Injection)을 위한 패키지로, Flutter 및 Dart 애플리케이션에서 사용할 수 있습니다. 이를 통해 의존성을 외부에서 주입받게 하여 모듈화된 코드를 구현할 수 있습니다.

get_it을 사용한 모듈화 개발

1. get_it 패키지 추가

먼저, pubspec.yaml 파일에 get_it 패키지를 추가합니다.

dependencies:
  get_it: ^7.2.0

그리고 패키지를 설치합니다.

$ flutter pub get

2. 모듈 등록

의존성을 관리할 모듈을 등록합니다. 보통 앱이 시작될 때 main.dart 파일에서 모듈을 등록합니다.

import 'package:get_it/get_it.dart';

GetIt locator = GetIt.instance;

void setupLocator() {
  locator.registerSingleton<AuthService>(AuthService());
  locator.registerFactory(() => UserRepository());
  // 필요한 모듈들을 등록합니다.
}

3. 모듈 사용

다른 곳에서 모듈을 사용할 때는 get_it을 통해 등록된 모듈을 가져와서 사용합니다.

final authService = locator<AuthService>();
final userRepository = locator<UserRepository>();

4. 테스트

get_it을 활용한 코드는 테스트하기 쉽습니다. 모듈이 모두 등록되었고 사용될 때 모듈을 가짜(mock) 모듈로 대체할 수 있습니다.

결론

get_it을 활용하면 Flutter 앱을 모듈화하여 개발할 때 의존성 주입을 효과적으로 관리할 수 있습니다. 이를 통해 유연하고 재사용 가능한 앱을 만들 수 있습니다.

의존성 주입과 get_it에 대한 더 자세한 내용은 get_it 공식 문서를 참고하시기 바랍니다.