Flutter Getit Service Locator Tips

Flutter GetIt service_locator - Feature 늘어날수록 관리가 힘든 이유

Flutter에서 GetIt으로 의존성 주입을 관리하다 보면, Feature가 5개일 때는 괜찮다가 15개가 넘으면 슬슬 힘들어진다. 오늘 겪은 것들 위주로 정리한다. 기본 구조 service_locator.dart 파일 하나에 GetIt 등록을 몰아넣는 구조다. final sl = GetIt.instance; Future<void> setupServiceLocator({ required String baseUrl, String? token, }) async { // 외부 라이브러리 sl.registerLazySingleton<Dio>(() => Dio()); // Datasources sl.registerLazySingleton<LawsRemoteDatasource>( () => LawsRemoteDatasource( dio: sl<Dio>(), baseUrl: baseUrl, token: token, ), ); // Repositories sl.registerLazySingleton<LawsRepository>( () => LawsRepositoryImpl(datasource: sl<LawsRemoteDatasource>()), ); } 문제 1: 토큰 타이밍 앱 시작 시 setupServiceLocator(token: null)로 먼저 등록하고, 로그인 후에 토큰을 갱신해야 하는 상황이 생긴다. ...

2025-07-23 · 2분 소요 · Seunghan
개인정보처리방침 문의