상태관리(8)
-
[075] 플러터 (Flutter) 배우기 - 상태 관리7 (GetX 사용 - Obx, RxList, GetXController, Dio 사용하여 리스트뷰 구현하기)
안녕하세요 totally 개발자입니다. 오늘 이 시간에는 GetX 상태 관리 패키지, Dio를 이용하여 setState 사용 없이 간단하게 상태를 업데이트할 수 있도록 리스트를 만들어 보겠습니다. 페이지 1개, model 객체 1개, controller 1개씩 이용하여 만들어보도록 하겠습니다. 데이터는 https://jsonplaceholder.typicode.com/todos 여기에서 받아오도록 하겠습니다. GetX의 기본 원리는 아래와 같습니다. 1) 기존 MaterialApp 대신 GetMaterialApp으로 감싸줍니다.2) UI에서 사용될 페이지가 로딩됩니다.3) 페이지에서 사용할 상태를 컨트롤러를 등록 및 활용하여 업데이트한다.4) GetX, GetBuilder, Obx 등의 위젯을 사용하여서..
2025.01.20 -
[005] 리액트 (React) 배우기 - 함수형 컴포넌트 useState Hook(훅) (상태 업데이트)
안녕하세요~ totally 개발자입니다. State 함수형 컴포넌트 State(상태)에 관해 살펴보도록 하겠습니다. 리액트는 컴포넌트를 조합하여 페이지를 만들어가는 방식이고 각각의 컴포넌트의 상태를 관리해서 업데이트하는 방식입니다. 바로 useState를 사용하면 되는데, 기존에 만든 form을 사용해서 form이 제출되었을 때 아래에 입력한 사용자의 정보를 출력해줄 수 있도록 상태를 업데이트하여 UI를 재랜더링해줄 수 있도록 합니다. 기존 클래스형 컴포넌트에서는 setState를 사용해서 업데이트하는 반면 함수형 컴포넌트의 useState를 사용하는 경우에는 setState용의 함수를 지정하기 때문에 그 함수를 사용해서 업데이트해야 합니다. Step 1: 먼저 import React, { useStat..
2023.02.23 -
[036] 플러터 (Flutter) 배우기 - 상태 관리6 (GetX 사용 - Reactive State Manager & RxList 사용)
안녕하세요~ totally 개발자입니다. GetX - Reactive State Manager 저번 시간에는 Simple State Manager에 대해 살펴보았고, 이번 시간에는 Reactive State Manager에 대해 살펴보도록 하겠습니다. Simple State Manager에서는 GetBuilder와 update 메소드를 통해 UI를 업데이트해주었던 반면, Reactive State Manager에서는 Data Stream처럼 데이터를 주기적으로 관찰(Observe)하여 데이터가 변경된 경우에 UI를 실시간으로 업데이트해줍니다. 여기서 알아야 할 몇 가지 키워드가 있는데 Rx는 ReactiveX이고, Obs는 Observable입니다. 이 GetX Reactive State Manager의..
2023.02.20 -
[035] 플러터 (Flutter) 배우기 - 상태 관리5 (GetX 사용 - Simple State Manager, GetBuilder 사용)
안녕하세요~ totally 개발자입니다. GetX - Simple State Manager, GetBuilder 사용 GetX는 상태관리 이외에 코드 간결화 등의 목적으로도 많이 사용되며 오늘은 상태관리, 먼저 GetBuilder를 활용한 Simple State Manager에 대해 살펴보겠습니다. Step 1: pubspec.yaml에 get을 등록합니다. Step 2: countController.dart 파일을 생성해주고 코드를 다음처럼 작성해줍니다. 10번째 줄에 보시면 update()라는 함수가 사용되는데 이것을 호출해야 상태가 업데이트됩니다. increase, decrease 함수를 각각 적어주었습니다. Step 3: main.dart 파일을 열어서 다음처럼 import해줍니다. Step 4:..
2023.02.19 -
[034] 플러터 (Flutter) 배우기 - 상태 관리4 (riverpod 사용)
안녕하세요~ totally 개발자입니다. riverpod 오늘 이 시간에는 river_pod를 사용하여 상태를 관리하는 방법에 대해 간단하게 살펴보도록 하겠습니다. Riverpod도 역시 상태 관리 라이브러리로서, Provider와 사용성이 같고 Provider의 문제점을 개선한 버전이라고 보시면 됩니다. 여기에서는 flutter_riverpod 라이브러리로 진행하도록 하겠습니다. 기본적으로 Provider에 대한 이해가 필요한데, 일반적인 Provider는 값을 읽을 수는 있으나 수정할 수는 없습니다. 값을 읽고 수정하려면 상태를 변경할 수 있는 Provider인 StateProvider를 사용해야 하며, 일부 로직을 같이 사용하는 경우에는 StateNotifierProvider를 사용하시면 됩니다. ..
2023.02.17 -
[033] 플러터 (Flutter) 배우기 - 상태 관리3 (get_it 사용)
안녕하세요~ totally 개발자입니다. get_it 오늘은 get_it 패키지를 사용하는 방법에 대해 살펴보도록 하겠습니다. get_it은 DI(Dependency Injection): 의존성 주입 Library로서 InheritedWidget 및 provider를 대체할 수 있으며 주된 사용으로는 REST API 클라이언트 등을 포함한 데이버베이스 서비스 객체에 접근해서 사용할 때, View, BLoC 등 여러가지 객체에 접근해야 될 때 사용합니다. Step 1: 먼저 pubspec.yaml에 get_it, http 패키지를 설치해줍니다. Step 2: 다음처럼 디렉토리를 구성해줍니다 Step 3: 먼저 model 폴더 내에 있는 album.dart를 아래처럼 작성해줍니다. Step 4: servic..
2023.02.05