-
[플러터] 2022년 12월 현시점의 Getx는 어떤가...개발일지/flutter 2022. 12. 2. 00:12
네 여러분 안녕하세요 개발하는남자 개남입니다.
오늘 다뤄볼 주제는 현 시점의 Getx라는 주제 입니다.
다들 플러터 개발에 빠질 수 없는 것 중에 하나가 상태관리 라이브러리일텐데요
플러터에는 다양한 상태관리가 있습니다.
그중에 대표적으로 getx를 포함해서 provider bloc riverbed 등이 있습니다 이 외에도 여러가지가 더 있는 걸로 알고 있는데 가장 많이 사용하는 것으로 정리해보니 이렇게 4가지로 추려졌습니다. Pub.dev 에서 검색하여 좋아요 수 와 언제 출시 되었는지를 정리 해보았습니다 단연 getx가 가장 많은 사랑을 받고 있습니다. 저 역시 Getx로 대부분의 프로젝트에서 사용하고 있습니다만 어딜가도 인기가 있는 사람이나 제품의 경우 반드시 그 반대편에 서는 사람들이 있기 마련입니다. 인기가 없을때는 사람들이 관심을 두지 않기때문에 반기를 드는 쪽이 없는 것이죠.
Getx도 마찮가지입니다. 많은 사랑을 받는 다는 것은 반대편에 서는 사람이 생길 수 밖에 없습니다. 그렇다고 반대 편에 있는 사람이 잘못되었다는것은 아니고 그들의 시각에서 보면 어느정도 납득이 되는 타당한 근거가 있다는 것입니다.
자 그럼 그들의 시각에서 보는 Getx의 문제점들을 한번 같이 살펴 보도록 하겠습니다.
첫 번째. 도큐먼트가 불편하다
이 부분은저 역시 공감하는 바 입니다. 요즘 도큐먼트들은 친절하고 가독성이 좋게 잘 정리 되어 많은 개발자들이 학습하기 편리하게 되어있습니다. 좋은 가이드를 제시하면서 말이죠, 그에 비해 Getx는 구리다고 볼 수 있습니다. 아마 공감하시는 분들이 계실 것이라 생각됩니다.
개발자 중에는도큐먼트를 보고 개발하는 사람들이 많은데 Getx의 document를 보면 학습하고 싶지 않아 질 수 있겠다 싶습니다.
저 역시 처음 Getx가 좋다고 하니까 한번 학습해볼까 싶어 도큐먼트를 열어봤는데 쉽게 읽혀지지 않더라고요 ;;
두 번째. 이슈가 많고 대응이 느리다
Github만 가서 봐도 이슈가 다른 라이브러리에 비해 상당히 많다고 볼 수 있습니다. 이부분은 사실 많은 관심을 받고 있고 많이들 사용하기 때문일 수 있는데요. 등록된 이슈를 다 살펴 볼 수 없어 추측하겠지만, 크리티컬 이슈도 있겠고, 사용방법을 잘 몰라 질문을 남기거나 , 개발자 개개인의 개발철학이 맞지 않아 개선하고 싶은 마음에 요청을 하는 분들도 있을 것입니다.
Getx를 만든게 회사나 팀이 아닌 개인으로 알고 있는데, 아무래도 많은 개발자분들의 이슈를 대응하기란 쉽지 않겠다는 생각이 듭니다.
그리고 jonataslaw 이분은 변호사 이자 개발자라고 github에서 소개하고 있습니다. 물론 지금은 아이리스 개발 부사장으로 있다고 합니다. Getx는 메인 업무가 아닐 수 있기때문에 이슈대응이 느릴 수 밖에 없는 것이죠 그런점에서 큰 단점이라고 볼 수 있겠습니다.
세 번째. Getx가 상태 관리 외에 많은 부분을 담당하고 있다
이 부분은공감되는 부분이지만 한편으로는 공감하지 않는 부분이기도 합니다.
Getx를 상태관리 라이브러리라고 생각한다면 문제가 됩니다. 하지만 Getx는 상태관리 라이브러리가 아닙니다.
Getx is an extra-light and powerful solution for Flutter
- Github 소개 중.즉, Getx는 플러터개발을 위한 매우 경량화된 강력한 솔루션이라는 것이죠. 그런 점에서 본다면 많은 부분을 담당하는것이 당연한 부분입니다. 실제로도 기존 flutter 코드에 비해 경량 하면서도 편리한 유틸도 존재하지요. 근데 Getx를 단순히 상태관리를 하는 라이브러리라고 생각하는 분들에게는 이 부분도 단점으로 생각될 수 있습니다.
네 번째. 특정 패턴 없이 자유롭게 개발이 가능하다
빠른 개발을 위해서는 손쉽고 빠르게 접근할 수 있는게 최고라고 볼 수 있습니다. 하지만, 그것은 어디까지나 프로토 타입을 만들때의 상황일 수 있습니다. 지속적으로 관리를 해야 하고 규모가 큰 프로젝트에서는 자유롭게 개발이 가능한 것은 다양한 방식이 산재되어 유지보수가 어렵게 되는 상황을 만들어낼 수 있습니다. 그래서 어렵지만 개발 패턴이 존재하는 것이고 그 룰 베이스로 개발되면 장기적으로 관리하는 측면으로도 좋다고 볼 수 있습니다. 그런점에서 Getx는 공식적인 규칙? 패턴이 존재하지 않아서 Getx를 사용하는 사람마다 저마다의 방식으로 Getx를 사용하고 있을 것입니다. 이부분은 장점이자 단점이 되는 부분입니다.
개발하는 남자가 생각하는 Getx
상태 관리 라이브러리를 Getx 외에 하나 정도는 더 알아두는 게 좋을 것 같습니다. 대표적으로 bloc이라던지 요즘 뜨고 있는 riverpod 등 프로젝트에 맞게 적절하게 사용하면 좋을 것 같다는 생각이 듭니다. Getx는 정말 강력한 것은 빠르고 경량화하게 개발을 할 수 있다는 점에서 정말 강점이 있고 유지보스 측면에서는 bloc이나 타 라이브러리가 좋을 수 있습니다. 프로젝트의 성격에 맞게 설정하여 대응하면 좋을 것 같다는 생각이 듭니다.
여러분들은 어떻게 생각하시나요?
댓글로 알려주세요 ~!
'개발일지 > flutter' 카테고리의 다른 글
[플러터 책] 개발하는남자의 핸즈온 플러터 출시되었습니다. , 책소개 , 이벤트 (1) 2024.07.24 [플러터 Bloc 마스터] 왜 Bloc을 사용하는가? (3) 2023.02.01 [ Flutter / 플러터 ] SQFlite 문서 정리 및 예제로 마스터해보자. (2) 2022.10.13 [Flutter 전망] 3년차 플러터 개발자가 말하는 플러터의 앞날은?? (12) 2022.07.01 [Flutter 3.0 ] 플러터 3.0 공식 릴리즈 핵심 내용 살펴보자~! (1) 2022.05.13