How to Evaluate Flutter Dependencies (or, why I won't use GetX)

Поділитися
Вставка
  • Опубліковано 15 жов 2024

КОМЕНТАРІ • 51

  • @pheenearts7075
    @pheenearts7075 Рік тому +9

    I have been using GetX for a week so far. I have not found any error at all. Obx is amazing. Its builder is wrapped into it. It is more of a listener. Was thinking of using hooks but hooks is not compatible wity GetX. That is one issue. I feel like GetX is still growing. All it needs is a supportive community and soon Bloc will be second best. Lol

  • @ctkqiang
    @ctkqiang 2 роки тому +10

    GetX is the perfect example of "why you shouldn't try to do everything at once " .

    • @catagna7273
      @catagna7273 8 місяців тому

      but isn't that flutter do?

  • @DigitalDesignET
    @DigitalDesignET 2 роки тому +5

    I'm in the middle of a very complex app using GetX for state management and dependency injection. I'm contemplating moving to riverpod but get his does what I want it to do with less code. I only compile those two functionalities therefore no problems with the size.
    What I like most about GetX is, the fact that I'm able to create and manage Animation Controllers within the View Controllers. That is much easier than Hooks or any other solution. Another thing I like about it is how it enable you to create and work with View Controllers.
    Regardless the use of GetX when using for state management and dependency injection is so minimal it should be easy to replace it with another framework.

    • @DholaSain
      @DholaSain 2 роки тому

      Getx is best. don't listen these dumb people.

  • @blueice1364
    @blueice1364 2 роки тому +10

    I never liked Getx just because it tries to do so much for no good reason. And never did I feel comfortable using it. This plugin is trying to redefine Flutter and doing a very bad job at it.

  • @CouttsDesign
    @CouttsDesign 2 роки тому +4

    Really great video. Helped me a lot. I've been using Flutter for 3 years now and just had a brush with GetX. Can you explain to me who uses GetX and why? I suspect it's people who started with GetX and never worked with straight Flutter. I can't imagine anyone working with Flutter for a couple years and then going to GetX. Is that accurate or am I missing something?

    • @glitchlover260
      @glitchlover260 2 роки тому +5

      I started flutter without any state management package. Used setState() everywhere. But eventually my code got messy, and often I get loss in a big project. Then I saw getx, use it, and find my code cleaner than ever. So yeah you're missing a lot of things, not about getx but about different people's different comfort zone. Although I agree it's all-in-one package, and it may be consuming too much memory, but I am not interested in going back to those old days. If there is something lightweight then getx and makes my code organize, then I will consider switching.

    • @saadmansoor3547
      @saadmansoor3547 Рік тому

      @@glitchlover260 have you tried Riverpod v2.0 ?

    • @rudiansyahalpontianaky8356
      @rudiansyahalpontianaky8356 Рік тому

      I was learn and use setState, after that provider, last project using GetX its ok

  • @sergey_molchanovsky
    @sergey_molchanovsky 2 роки тому +8

    Great detailed analysis! In Russian community segment, they organized debates about GetX. People talked about it for 2 hours and didn't say anything helpful or worthy. You put in 20 minutes video more useful information.
    Thoughts:
    1:50 - it's not similar to Provider (it doesn't use context lookup), but it's a clone of get_it package (service locator). It's not a singleton as it still allows providing abstractions:
    Get.put(Cat())
    4:30 - looks like you didn't found the documentation, it's hidden well in the repository "documentation" folder. It explains many things. An author decided not to document the API but to describe it in the .md files in his repository.
    7:30 - it's an old way of creating controllers. GetX provides Bindings, allowing you to bind your controllers to routes (with autodispose on route close)
    8:35 - you should use you should use Get.put, not Get.create, and GetView, not GetWidget, to lookup the registered instance. Get.create / GetWidget are used in pair only for list entry controllers.
    20:00 - wow, you found my issue :)

    • @flutter--help8127
      @flutter--help8127  2 роки тому +2

      Oh man it's been since December 2021 and that PR still isn't merged! Brutal

    • @sergey_molchanovsky
      @sergey_molchanovsky 2 роки тому +1

      @@flutter--help8127 the biggest pain of GetX that it still doesn't support Navigator 2.0. He has only small example with strange RouterOutlet and rootDelegate things. And it isn't documented at all. He promised to write a manual since last summer and still didn't.
      That's the main reason why I left GetX.

    • @rudiansyahalpontianaky8356
      @rudiansyahalpontianaky8356 Рік тому +1

      @@sergey_molchanovsky what about now ?

  • @hellpunch9414
    @hellpunch9414 2 роки тому +4

    Is it performant as it claims? It seems to make some aspect of Flutter very easy to work with. It is true that the documentation is lacking but it has original translation for many languages that might be more useful for somebody.

    • @flutter--help8127
      @flutter--help8127  2 роки тому +2

      I did not do any of my own research but found a couple strange github threads.
      github.com/jonataslaw/getx/issues/789
      github.com/jonataslaw/getx/issues/243
      I think there's a big difference between EASIER and BETTER. It's true GetX gets people up and going almost instantly and is incredibly easy to start off with. But after doing some digging through issues and reddit I've found several posts now where devs with a large and complex app are finding it become spaghetti code or even running into gotcha's with GetX, completely blocking them.

    • @sergey_molchanovsky
      @sergey_molchanovsky 2 роки тому +4

      Unfortunately no.
      There are some tests, showing GetX custom realization of notifiers are x3.5 times slower, than Flutter built-in notifiers.

  • @darul-asar381
    @darul-asar381 Рік тому

    thank you for the useful and detailed analysis of this package, I want to convince our manager not to use GetX, since he believes that GetX is very easy to use, but practice shows that this ease will be followed by big problems that will be very difficult to get rid of

  • @Juliapak
    @Juliapak 2 роки тому +2

    I'm a getx girl here but i find this discussion to be interesting.

  • @chungheonable
    @chungheonable Рік тому

    I dont understand though, most issues i've see is the dialogs/some UI element. So if you dont use the built in dialogs, you can still use the default way where you fully code up a dialog. So why is that so bad compared, to the normal way? I've always felt this unsettling feeling that getx is bad, but I cant really justify it because it allows me to build up the app fast and most issues I've faced usually result in a quick search to get a solution. I believe there are.quite a large base of ppl using, therefore there are many "solutions"

  • @joseinTokyo
    @joseinTokyo Рік тому

    excellent reviews thanks!

  • @gopinathp4953
    @gopinathp4953 2 роки тому

    Considering Performance and resource consumption, can I use Getx for quite a large apps or not??

  • @alfredoa334
    @alfredoa334 2 роки тому

    Great video!!! Thank you very much.

  • @francisndubanumbi648
    @francisndubanumbi648 2 роки тому +8

    Your comparison with others is not fair. GetX does more than 10 things, and you're comparing it with Riverpod, Provider, BLoC that so only state management ! You should only compare them with only GetX state management.

    • @k4ba
      @k4ba 2 роки тому +3

      That's exactly another problem with it. It's trying to take over Flutter essentially

    • @francisndubanumbi648
      @francisndubanumbi648 2 роки тому +3

      @@k4ba has Laravel taken over PHP ? It's there to simplify the work. That's the same thing with GetX : simplification !

    • @kevinantony714
      @kevinantony714 2 роки тому

      @@francisndubanumbi648 preach brother preach

  • @faizulla5838
    @faizulla5838 2 роки тому +2

    Or maybe there are few questions, because few applications use it? many serious companies use REDUX.
    and secondly, the most important thing in GetX is little code, really little, for me personally this is the most important thing

    • @k4ba
      @k4ba 2 роки тому +3

      I though big companies use Bloc

  • @markjoseultra6903
    @markjoseultra6903 Рік тому

    Getx for me is a new framework on top of flutter

  • @bawantharajapaksha3969
    @bawantharajapaksha3969 2 роки тому +18

    stop complaining if you think lack of documentation go and help them to create proper documentation

    • @k4ba
      @k4ba 2 роки тому +5

      This is an analysis video... don't get mad buddy.
      But yeah, basically... screw GetX

  • @jeslinjacob6472
    @jeslinjacob6472 2 роки тому +6

    Getx makes your life simpler.. some developers dont like peace .. they like problem .. only such people use bloc 🤣🤣

    • @sergey_molchanovsky
      @sergey_molchanovsky 2 роки тому +3

      Use mobx + get_it + auto_route + slang - and you will have the same instruments as getx, but better, stable and without performance issues.

    • @rudiansyahalpontianaky8356
      @rudiansyahalpontianaky8356 Рік тому

      @@sergey_molchanovsky can i get what's the issues on getx ?

    • @sergey_molchanovsky
      @sergey_molchanovsky Рік тому

      ​@@rudiansyahalpontianaky8356 in brief, GetX lacks of Actions, Computed (which present in MobX), has numerous bugs (`append` in StateMixin does not work at all, dialogs are buggy). Translations are based on outdated `easy_localization`. `slang` is much better. `update()`-notifications are based on some "mini-streams" which are 3.5x times slower than standard `notifyListeners` (proven by independent testers). And the main problem, it does not support Navigation 2.0 (more than a year passed since then!). Also, it looks abandoned by its creator (600+ issues which likely won't be resolved).
      GetX tried to be all-purpose sole package, and does it bad.

    • @rudiansyahalpontianaky8356
      @rudiansyahalpontianaky8356 Рік тому

      @@sergey_molchanovsky where i can get detail of reviewing like this and more things in getx maybe article or else ? i want to see result test of observable . obs too,and else ?

    • @sergey_molchanovsky
      @sergey_molchanovsky Рік тому

      @@rudiansyahalpontianaky8356 don't spend your time, bro. GetX is a pure garbage.

  • @dolbysoundsofficial9323
    @dolbysoundsofficial9323 2 роки тому +1

    Make Video On Riperpod😎✌️

  • @yuanbohua
    @yuanbohua 2 роки тому +5

    You are using it the wrong way, don’t even try if you don’t want to learn how to use it…

  • @dolbysoundsofficial9323
    @dolbysoundsofficial9323 2 роки тому

    Gets Worst

  • @Mobik_
    @Mobik_ 2 роки тому

    Wait... the snackbar doesn't push up the FAB using a Scaffold with GetX?! LOL

    • @flutter--help8127
      @flutter--help8127  2 роки тому +4

      Indeed, this is a consequence of showing dialogs and snack bars without a build context. A build context describes a widgets existence and without it they cannot react to the GetX snack bar.
      GetX snack bars and dialogs are effectively hacked+stacked on to the screen due to the lack of build context.

  • @dolbysoundsofficial9323
    @dolbysoundsofficial9323 2 роки тому +6

    People who Support Getx is Noob🤣

    • @tabaicanking3701
      @tabaicanking3701 2 роки тому +15

      That's not cool man

    • @subrotoxing8214
      @subrotoxing8214 2 роки тому +9

      people who use provider are college students who are forced to use it because their professors asked it as a requirement.. companies wants native and real programmers use getx for their clients project but told peers they use bloc or riverpod ^^

    • @jeslinjacob6472
      @jeslinjacob6472 2 роки тому

      This guy has no clue of what he's talking 🤣🤣 its sure that hez a noob

    • @lord-jarc
      @lord-jarc 2 роки тому

      @@subrotoxing8214 accurate xD