본문 바로가기

Flutter-플러터/플러터 공부

Get X - lazyPut

반응형

 

 

import 'package:get/get.dart';

import 'package:clonecodingtodogetx/controller/task_controller.dart';
import 'package:clonecodingtodogetx/controller/textfield_controller.dart';

class MyBindings extends Bindings {
  @override
  void dependencies(){
    Get.lazyPut(() => TaskController()); //지연로딩 기능, 모든 인스턴스를 미리 등록해버리면 어플을 처음 열때 오래 걸릴 수 있음 그것을 방지함
    Get.put(TextFieldController());
  }
}

lazyPut() 메서드는 GetX에서 지연 로딩(lazy loading)을 수행하면서 인스턴스를 등록하는 메서드입니다.

지연 로딩은 해당 인스턴스가 처음 요청될 때까지 객체를 생성하지 않고, 필요한 시점에 객체를 생성하여 반환하는 것을 의미합니다. 이를 통해 애플리케이션의 성능을 개선할 수 있습니다.

예를 들어, 애플리케이션이 시작될 때 필요한 모든 인스턴스를 미리 생성하면, 애플리케이션의 초기화 시간이 늘어날 수 있습니다. lazyPut() 메서드를 사용하면, 인스턴스가 필요한 시점에 생성되기 때문에 초기화 시간을 줄일 수 있습니다.

따라서 위 코드에서는 TaskController 클래스를 lazyPut() 메서드를 사용하여 지연 로딩하도록 등록하였습니다. 이를 통해 TaskController 인스턴스가 필요한 시점에 생성되도록 하여 애플리케이션의 성능을 개선할 수 있습니다.

 

 

반응형