본문 바로가기

Flutter-플러터/플러터 공부

Get x 2편 - Get x의 상태관리에 대해

반응형

 

 

getx/state_management.md at master · jonataslaw/getx (github.com)

 

GitHub - jonataslaw/getx: Open screens/snackbars/dialogs/bottomSheets without context, manage states and inject dependencies eas

Open screens/snackbars/dialogs/bottomSheets without context, manage states and inject dependencies easily with Get. - GitHub - jonataslaw/getx: Open screens/snackbars/dialogs/bottomSheets without c...

github.com

 

 

위 링크는 Get x를 만든 개발자가 Get x 대한 설명서이다. 항상 느끼는 것이지만 개발자들의 설명은 뭔가 장황하다. (다 그런것은 아니지만..)하나하나 읽다보면 했던 이야기가 또 나온다. 자신이 만든 패키지에 대한 사랑이 이성을 놓게 만드는 것 같다. 

 

그래도 위 Get x가 Flutter 로 어플을 개발하는데에 있어서 엄청난 혁신을 가져온 것은 맞다. 

그런면에 있어서 정말 감사하게 생각한다. 

 

Get X로 상태관리를 하게 된다면 가장 큰 장점은 Ram의 소모가 적다는 것이다. 기존 패키지로 어플을 구성하게 되면 상태 변환이 필요한 어플들은 Stateful 위젯을 사용해야 하고 changeNotifier 클래스를 사용해야 한다. 위젯이 중첩된다면 모든 클래스의 위젯들이 업데이트가 필요하게된다. 그러한 상황이 곧 Ram의 낭비라고 Get X의 개발자는 이야기한다. 그래서  Get x를 이용하게 되면 더 정확하게는 Obx(())의 기능을 사용하게 되면 Listview안의 Checkbox가 있고 두 위젯을 각각의 Obx(())가 보고 있다면 각각위 위젯이 변경 될때만 상태가 업데이트가 된다. 

 

또한 기존의 '진탁'이라는 Text 변수가 다시 한번 '진탁'이라고 변경될 때도 이미 Obx(())가 '진탁'으로 인식을 하고 있기에 재구성을 하지 않는다. (위젯이 복잡하지 않을 때는 큰 차이가 없지만 위젯이 복잡하고 , 데이터의 양이 많아진다면 엄청난 차이라고 생각한다.)

 

반응형 변수를 만드는 방법은 총 3가지를 소개하고 있다. 하지만 변수를 선언후 .obs; 를 입력하는 것으로 실사용자들은 많이사용하고 있다. 고로 이 한가지만 알고 있으면 문제 없다. 

 

fianl name = ''.obs;

final count = 0.obs;

 

결론적으로 Get x를 만든 개발자가 추구하는 것은 '최소의 종속성으로 라우트,상태,종속성 관리를 하는것' 이라고 이야기하고 있다. 

 

직관적, 효율 이 두가지에 미치면 이런 좋은 패키지를 개발 할 수 있는 것 같다. 부럽다. 이 개발자의 광기와 능력이..

 

 

 

 

 

728x90
반응형

'Flutter-플러터 > 플러터 공부' 카테고리의 다른 글

Get X 4편 - 테마 변경  (0) 2022.10.14
Get x 3편 - 종속성 관리  (0) 2022.10.14
Get X 1편 - Get X에 대해  (0) 2022.10.09
MVC, MVVM 패턴이란?  (1) 2022.10.06
플러터 Stateful 위젯의 생명주기 ??  (0) 2022.09.21