[flutter] get_it을 이용한 앱 자동화

앱 개발은 많은 종속성을 관리하고 처리해야 합니다. 예를 들어 여러 페이지나 유틸리티, 서비스 등을 관리해야 합니다. 이 때, get_it 라이브러리를 사용하면 의존성 관리를 간결하게 할 수 있습니다.

get_it 이란 무엇인가요?

get_it은 Dart와 Flutter의 심플하고 확장 가능한 의존성 관리 라이브러리입니다. 이 라이브러리를 사용하면 여러 Widget에서 가능한 최대한 작은 범위 내에서 의존성을 관리할 수 있습니다.

get_it을 이용한 앱 자동화

  1. 의존성 등록: get_it을 사용하여 필요한 각 요소에 대한 의존성을 등록합니다.

예시 코드:

// main.dart
void main() {
  setupLocator();
  runApp(MyApp());
}

void setupLocator() {
  locator.registerLazySingleton(() => ApiService());
  locator.registerFactory(() => SomeViewModel());
  // 여기에 추가적인 의존성을 등록할 수 있습니다.
}
  1. 의존성 사용: 등록된 의존성을 사용하여 필요한 곳에서 호출하고 활용합니다.

예시 코드:

// some_page.dart
class SomePage extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    final apiService = locator<ApiService>();
    
    return Scaffold(
      // apiService 활용
    );
  }
}
  1. 변경 알림: 의존성이 변경되면 get_it을 사용하여 해당 변경 사항에 대한 알림을 수신할 수 있습니다.

예시 코드:

locator<ApiService>().addListener(() {
  // ApiService의 변경 사항을 처리
});

정리

get_it은 Flutter 앱에서 의존성을 관리하고 자동화하는 강력한 도구입니다. 의존성을 등록하고 사용하는 것은 매우 쉽고 확장 가능합니다. 이를 통해 코드의 재사용성, 유지보수성, 그리고 테스트 가능성을 높일 수 있습니다.

의존성 관리가 복잡하고 어렵다고 느끼는 경우, get_it을 활용하여 보다 효율적으로 관리할 수 있습니다.