[flutter] get_it을 활용한 앱 모니터링

앱이나 웹 애플리케이션을 개발할 때, 종종 여러 모듈 사이에서 데이터를 전파하거나 특정 상태를 확인해야 할 때가 있습니다. 이러한 문제를 해결하기 위해 의존성 주입(Dependency Injection) 라이브러리가 사용됩니다.

Get_It의존성 주입(DI)을 위한 강력한 라이브러리 중 하나입니다. 이를 활용하여 앱의 모니터링을 구현하는 방법을 살펴보겠습니다.

Get_It 이란?

Get_ItService Locator 패턴을 기반으로 하며, 이를 통해 애플리케이션 전반에 걸친 의존성을 쉽게 관리할 수 있습니다. 이를 활용하여 앱의 상태나 데이터를 감시할 수 있습니다.

앱 모니터링 구현하기

Get_It을 활용해서 앱 모니터링을 구현하기 위해 먼저 Get_It 라이브러리를 프로젝트에 추가해야 합니다. 먼저 pubspec.yaml 파일에 아래와 같이 Get_It 라이브러리를 추가합니다.

dependencies:
  get_it: ^7.1.3

이제 Get_It을 이용해 원하는 모듈을 등록하고 감시하려는 데이터를 반환하는 메서드를 구현할 수 있습니다.

예를 들어, 모니터링 모듈을 위한 서비스를 만들고 싶다면, 아래와 같은 코드를 작성할 수 있습니다.

import 'package:get_it/get_it.dart';

class MonitoringService {
  // 상태를 감시하고 싶은 데이터나 상태를 정의합니다.
  int _appState = 0;

  // Get_It을 통해 해당 서비스의 인스턴스를 등록합니다.
  static void setup() {
    GetIt.instance.registerLazySingleton(() => MonitoringService());
  }

  // 앱 상태를 반환하는 메서드를 정의합니다.
  int getAppState() {
    return _appState;
  }
}

이후, 앱의 다른 모듈에서는 Get_It을 통해 위에서 등록한 모니터링 서비스에 쉽게 접근할 수 있습니다.

final monitoringService = GetIt.instance<MonitoringService>();

int appState = monitoringService.getAppState();

위와 같이 Get_It을 활용하면 앱의 각 모듈이나 기능 사이에서 깔끔하게 상태나 데이터를 주고받을 수 있게 됩니다.

마무리

Get_It를 활용하면 의존성 주입을 통한 모듈 간의 상호작용을 쉽게 관리할 수 있습니다. 상태 혹은 데이터를 감시할 때 Get_It을 활용하면 각 모듈의 복잡도를 감소시키고 모듈 사이의 결합도를 낮출 수 있습니다. Get_It을 통해 앱 모니터링 기능을 구현하는 것은 앱의 유지보수성과 효율성을 향상시킬 수 있는 좋은 방법입니다.

이러한 간편한 의존성 주입 라이브러리를 활용해보면, 앱의 개발 및 유지보수에 많은 도움이 될 것입니다.

참고 문헌