Pragmatic State Management in Flutter (Google I/O'19)

Поделиться
HTML-код
  • Опубликовано: 2 окт 2024

Комментарии • 252

  • @skippersprint
    @skippersprint 2 года назад +5

    The audience didn't pass the vibe check

  • @cagrigoktas
    @cagrigoktas 5 лет назад +301

    Don't be sad Matt. I wear the same pajamas while watching you last year.

    • @zhangchaoliu3249
      @zhangchaoliu3249 5 лет назад +2

      so funny ...

    • @kmltrk07
      @kmltrk07 4 года назад +4

      Güzel espri reis Cem Yılmaz la bi akrabalık var mıydı?

    • @xaviersoh
      @xaviersoh 3 года назад

      Funny you guy

  • @kenn850
    @kenn850 5 лет назад +26

    By far the best flutter talk i have seen.
    funny, weigh's alternative methodologies and very educative.

  • @dalu_
    @dalu_ 2 года назад +1

    Flutter state is an absolute mess.
    Android development is an absolute mess.
    New and old and many options but no real proper way.
    Pick one and stick to it. This video is from 2019, It's 2022 now. Now provider is the default choice when reading the docs.
    Who knows what it will be in 3 years.
    Pick one and stick to it. I'm so tired of learning and learning and not being productive.
    Builder pattern blah pattern.
    I wouldn't even care about flutter if oidc wasn't an even bigger mess and it's only a mess because of you, Android is megamess.
    It works well in a browser but it doesn't work on Android. You have AppAuth and it's as complicated as can be. Why does everything have to be such a inflated, complicated mess at Google?

  • @777giba
    @777giba 5 лет назад +38

    Flutter Devs: What you need in state management?
    Me: yes!

  • @HossamKandil
    @HossamKandil 3 года назад

    Great , clears a lot of ambiguity when choosing a state management

  • @LunfardoAR
    @LunfardoAR 5 лет назад +12

    new to flutter here, so this means you can create your whole app with providers and static widgets turning stateful widgets useless unless minor local state management?

  • @HezOmanjo
    @HezOmanjo 3 года назад +13

    Believe it or not this video was my first interaction with flutter when I began my journey in May 2020. It was unbelievably complex but I'm glad I dint give up. I've been a fan of Filip ever since.

  • @yandelyano
    @yandelyano 4 года назад +5

    "Thank you very much";
    "Great tutorial";
    "You're the best", and it goes on and on...
    Give honest feedback already!
    This is not personal and this applies to most content creators who teach flutter even Google's Flutter official channel, almost everyone is explaining things based on the assumption that the viewer comes from an app development background or that they already have been working with this "standalone" technology which is not so standalone if I had to get acquainted with other languages and frameworks to be able to understand its basics, people who started from scratch (to whom these crash courses should be addressed) are not accounted for whatsoever.
    This creates an entry barrier, this prevents the app/web dev communities to prosper and become richer, there may be people who could have had an influence on the current practices if they were taken into consideration.
    Again, this is not personal, I'm merely describing reality.

  • @TarekEZaki
    @TarekEZaki 5 лет назад +24

    This provider sound much easier than bloc. Would love to see more detailed tutorials.

  • @humansofcrypto9746
    @humansofcrypto9746 4 года назад +44

    Love their style of delivery, makes the video very enjoyable along with being informative

  • @YabbaDadADo
    @YabbaDadADo 5 лет назад +88

    Currently at 14:00 and crying into my cornflakes as just finally got to grips with Bloc pattern and now a new reccomended approach.

    • @filiphracek
      @filiphracek 5 лет назад +21

      If you like Bloc, stay with it!

    • @RichardVowles
      @RichardVowles 5 лет назад +2

      I believe the point is if you have trouble with Bloc, they recommend Provider and you can migrate to Bloc as you need.

    • @hviidlys
      @hviidlys 5 лет назад +3

      They literally said that bloc was perfectly fine and that they use it themselves. I think this was geared towards users who havnt made a choice yet and are confused by all the options and just want to be told 'use this'.

    • @karol-lisiewicz
      @karol-lisiewicz 5 лет назад +5

      The final conclusion of this talk was if you feel comfortable with BLoC or Redux there's nothing wrong in using them, there's no golden bullet for Flutter apps architectures.

    • @astralstriker
      @astralstriker 5 лет назад +1

      Can feel ya bud.. But I feel that BLoC will still be preferred for more complicated stuff.

  • @sanukumar4845
    @sanukumar4845 5 лет назад +82

    1. State Management: When we want to change the state of a widget from outside the widget, i.e. from another widget, network, or system call.
    //Example
    2. In the example the outside entity is: another widget.
    3. Making a global state is not a good idea as:
    a. It Increases Coupling,
    b. Not scalable as there may be more than one implementation of the widget,
    c. Calling set state from outside the widget is bad as we'll have difficulty figuring out who changed the state of the widget in case of multiple callers.
    4. Let the framework help you instead of fighting it.
    5. UI is a function of state in declarative frameworks: UI = f(state) ...(f = build methods that declare what the screen should look like at any given time)
    Hence only the state should mutate the UI and not the other UI elements themselves.
    6. In order to deal with our previous problem we lift the state up, i.e. make a model at the level that is accessible to both the widgets.
    7. When the value of MySlider changes, it notifies MySchedule. MySchedule in turn notifies all its listeners in this case, just MyChart and then notifies MySlider that the update was successful.
    8. History of flutter state management:
    a. Scoped model: Implementation of #7
    b. BLoC: Used for large scale applications. Difficult to understand, implement and a lot of boilerplate code, requires knowledge of Rx and Streams.
    9. Currently used: Scoped Model: features a lot of ad-on features to the scoped model.
    10. Mixins: medium.com/flutter-community/dart-what-are-mixins-3a72344011f3
    11. ChangeNotifier: adds listening capabilities to MySchedule: addListener, removeListener, dispose...
    12. Lift the state up. Use the ChangeNotifierProvider widget in MyApp as the parent of MyChart and MySlider.
    13. Use the builder in the widget to build the MySchedule model.
    14. Get reference of the model from the Widgets can be done by:
    a. Consumer, ...(a widget that contains a builder that provides the reference to the model)
    b. Provider.of(context)
    15. Update the model from it's reference inside the widget. For the listeners, update the listeners by the model reference.
    //State "Management"
    16. Disposables: Cleaning up when the widget is getting disposed of done with dispose callback of Provider. ChangeNotifierProvider does the dispose part for you.
    17. Break your state up into different components and classes to keep it simple. Use MultiProviders when needed.
    18. Use anything with the provider, streams, data, whatever

  • @chhinsras
    @chhinsras 2 года назад +2

    What is best state management for flutter as of 2022?

  • @benton202
    @benton202 5 лет назад +17

    I watch this everytime i forget how to do this. so thats once a week...

    • @flobuilds
      @flobuilds 4 года назад +1

      So i am in the club now? 😂 I needed exactly this now i can rewrite everything and i just realized you wrote this comment a year ago 😅

  • @codesxt
    @codesxt 5 лет назад +30

    I've been suffering for days trying to implement a feature in a personal project and I just finished implementing the hardest part of it thanks to this talk and the Provider implementation. Life is good. Thank you, guys!

    • @johnmw170
      @johnmw170 3 года назад

      Hello am John from Uganda East Africa. I have an app idea but i couldn't afford to pay engineers for building it so I started learning programming. But I can't figer out how to store and use the input data form user please help me how do I do it.

    • @elisiosa3111
      @elisiosa3111 Год назад

      @@johnmw170 have you figured it out how to store user data? I would like to know how to

    • @valeriygolyshev
      @valeriygolyshev Год назад

      @@elisiosa3111 if you need to store data locally on user's device, think about shared_preferences package or some databases (see sqflite package for example)

  • @brendanlovelife
    @brendanlovelife 5 лет назад +11

    19:40 I just love how the attitude given towards community packages 😊

  • @MADMOTIONSMM
    @MADMOTIONSMM 5 лет назад +23

    @Matt...!!!! Your shirt hurting my eyes 🙄

  • @EmrahBilbay
    @EmrahBilbay 5 лет назад +2

    Project page: github.com/2d-inc/developer_quest

  • @theGoldyMan
    @theGoldyMan 5 лет назад +6

    @MattSullivan What is that modified version of Bloc pattern, could you share some details?

  • @truongsinhtran-nguyen7129
    @truongsinhtran-nguyen7129 5 лет назад +15

    So if i'm comfortable w/ both BLoC and Provider, for the next big complicated app, should I use one instead of another? I could not deduce pros and cons of these 2 being compared to each other after watching this presentation.

    • @philippeparisot6061
      @philippeparisot6061 5 лет назад

      This is what I'm wondering too...

    • @junpeiiori4720
      @junpeiiori4720 5 лет назад +2

      In your experience, which is the most beginner friendly and easy to use approach among the 2?

    • @FilledStacks
      @FilledStacks 5 лет назад +5

      You can use both. The provider is a way to provide your state to your widgets. If you manage state through a BloC then you can provide that using the provider. The example here shows that. pub.dev/packages/provider#-example-tab-

    • @julianarnold7992
      @julianarnold7992 5 лет назад

      Use the one you are most comfortable with. They are both great state management tools.

    • @kenthinson2980
      @kenthinson2980 5 лет назад +1

      @@junpeiiori4720 package provider is easier then Bloc in my experience.

  • @schinsky6833
    @schinsky6833 4 года назад +1

    1:00 Story of my (work-) life. i just love these guys!

  • @youTooGood
    @youTooGood 3 года назад +1

    its very interesting to see that flutter was developed by google but they aren't using android studio for development LoL infact ther are using vscode

  • @joehsiao6224
    @joehsiao6224 4 года назад +4

    I feel lucky watching this video as I am two weeks into Flutter!

  • @wearecode9199
    @wearecode9199 4 года назад +1

    I Believe Rx is the best since uses Behaviour thingy which unSubcribes by itself on dispose, hence you pass streams to StreamBuilders which dont need to render all the UI and only its subChildrens...

  • @fullemptiness
    @fullemptiness 5 лет назад +4

    For Xamarin.Forms developers, this is the nearest thing to the MVVM pattern, ChangeNotifier is like INotifyPropertyChanged

    • @rasmustchristensen
      @rasmustchristensen 5 лет назад

      and also the optimized way to check if you should notify or not.

  • @sodiboo
    @sodiboo 4 года назад +6

    "We spent a long time thinking about how we could make the title of our talk the most exciting and clickbaity title we could make it"
    - Every single RUclipsr on this entire damn platform

  • @rockerirwin
    @rockerirwin 3 года назад +1

    do you guys have the source code of the presented app ?

  • @globalplaylist6535
    @globalplaylist6535 5 лет назад +18

    More than a year working with flutter and dart, from those early days to these Glorious times i just saw one thing and that was the absolute art.
    Thinking about development teams and their unbelievable talent and work is mind blowing...
    I believe we shouldn’t call them programmers or developers, in fact they are artists. I think we need to change our perspective of what the art is.

  • @carloseugeniotorres
    @carloseugeniotorres 5 лет назад +8

    Thank you for the awesome presentation! Now a real and simple alternative for state management. Source code for the demo?

    • @BraulioCassule
      @BraulioCassule 5 лет назад +2

      github.com/2d-inc/developer_quest

    • @akilajayasooriya9533
      @akilajayasooriya9533 4 года назад

      Pragmatic State Management in Flutter (Google I/O'19) Example Replica:
      github.com/akilaj-oc/hello-flutter/tree/master/2_provider_pie_chart

  • @kenthinson2980
    @kenthinson2980 5 лет назад +4

    Great talk. As someone who is very used to MVC from iOS I was confused where to start with flutter. This is a great way to start.

  • @mjmontes2653
    @mjmontes2653 5 лет назад +3

    Remi Rousselet is awesome for creating Provider

  • @27plays
    @27plays 4 года назад +3

    Now i feels like Redux was so easy to use 😴

  • @stevenlyu2810
    @stevenlyu2810 4 года назад +1

    If you are interested in the fisrt demo , you can get it here :github.com/lvsj/control_chart_with_slider. There are several solutions, hope you like it.

  • @Jxrrdy
    @Jxrrdy 4 года назад +2

    Liking this video because of 13:58 - 14:05 lol.

  • @FelipeCampelo0
    @FelipeCampelo0 8 месяцев назад

    I am a totally beginner, self-study. Should I understand it by simply watching to this video, or should I keep learning some more ?

  • @heyavehey8973
    @heyavehey8973 2 года назад

    It's funny. That's the fail of declarative UI. Imperative style for the win.

  • @sudolv
    @sudolv 4 года назад +2

    Remember to turn down your volume after the video ends if you want to preserve your hearing.

  • @TheMoblieStuff
    @TheMoblieStuff Год назад

    Pls use for the next time direct the audio from the mixing console and don't record it Extra, that would reduce the reverb so much and if you still want to have sound from the public then just another micro for choirs and they just don't put it on the speakers that wouldn't do anyone any good

  • @mtdrip9523
    @mtdrip9523 5 лет назад +1

    Hope you Google will continue these technolgoies you are putting out, i am so amazed by Go, Dart, Flutter

  • @kld0093
    @kld0093 4 года назад +2

    Fireship dude also talked about this

  • @akilajayasooriya9533
    @akilajayasooriya9533 4 года назад

    Pragmatic State Management in Flutter (Google I/O'19) Example Replica:
    github.com/akilaj-oc/hello-flutter/tree/master/2_provider_pie_chart

  • @marigoj
    @marigoj 4 года назад

    WOWWWWW, new approaches to get the ball rolling! Software dev seems to be evolving sideways... replacing brackets by braces and vice versa... Why? This is like GWT (google web toolkit)... that lasted for a few years only....

  • @Elite7555
    @Elite7555 Год назад

    But isn't Provider constantly walking the tree? How's that affecting performance?

  • @acornerofherheart-jr9pl
    @acornerofherheart-jr9pl 2 месяца назад

    watching in 2024, helpful for beginner like me

  • @shashidhare3074
    @shashidhare3074 2 года назад

    Hi, i have doubt in provider, i have implemented MVVM architrcture. I failed to redirect the page in Login page after getting api response from LoginViewModel . can you send any reference to overcome my problem.

  • @SimonHalcrow
    @SimonHalcrow 4 года назад +1

    Great session, thanks guys! Simple question re IDE usage, why are you using vsCode instead of Android Studio?

  • @nero1375
    @nero1375 4 месяца назад

    Last year that Google I/O was something cool, shame ;/

  • @ricard458
    @ricard458 4 года назад

    Flutter is from google as well firebase. Why the firebase documentation don't have flutter examples? :)

  • @georgedicu7397
    @georgedicu7397 3 года назад

    hmm, not even googlers use AndroidStudio? :))))

  • @fauzytech
    @fauzytech 4 года назад

    I have a online shop app which has a detail product screen. when user enters, the app should request to backend for detail product. Should i use provider in this case? since i think Provider is a global state management. While i just need the data only for detail screen, not anything else. I mean, notifyListener seems like useless in this case.

  • @adilmalik1232
    @adilmalik1232 3 года назад +1

    I am that much new to Flutter states that even, I found 6:57 really inspiring, and in fact I needed something like this for my recent projects lol
    Thanks for the video, it was really fun and informative :)

  • @Textras
    @Textras 4 года назад

    So if you guys at Google are now using package:provider even with streams are you no longer using BLoC in scenarios with more complex design patterns? You still quasi recommend BLoC and other various choices at the end of the video (of course based on needs) but it's hard to imagine Google has no complex needs in any scenarios, and it sounded as if you yourselves have entirely moved off BLoC pattern.

  • @codingwithrudy
    @codingwithrudy 3 года назад

    The whole video I was not sure if the fly is real or in the video... btw really nice info. I am starting to love Flutter

  • @BohdanTrotsenko
    @BohdanTrotsenko Месяц назад

    Thanks a lot. Just learned about provider.

  • @adilbasharat
    @adilbasharat 3 года назад

    Very informative! Thanks for the video.
    Although the jokes made me cringe

  • @LethiuxX
    @LethiuxX 4 года назад +3

    I'm so happy that you guys decide to keep talking about state at these conferences.

  • @PriyanshuRaj-oc4tk
    @PriyanshuRaj-oc4tk 3 года назад

    How deal with various booleans in a stateful widget. Is provider really a solution for that?

  • @krupeshanadkat635
    @krupeshanadkat635 4 года назад

    Here is the code Provider v4.x Updated : github.com/krupeshxebia/Pragmatic-State-Management

  • @sila227
    @sila227 4 года назад

    i have been search for good architecture for flutter to build my app
    i see tdd clean architecture but now i see provider is this is enough to build my app or must use some MVC ????

  • @troglodylethol
    @troglodylethol 5 лет назад

    @29:24 haha....was waiting for that. All non-trivial apps that survive will eventually end up with dirty state management.

  • @jakubradl9327
    @jakubradl9327 5 лет назад

    Can anyone tell me, what Visual Studio extensions are they using for the stuff like "Wrap in a component", "Convert to statefull widget", etc.?

  • @marcinszaek7564
    @marcinszaek7564 5 лет назад +2

    Where inside that would you put business logic or network requests?

    • @filiphracek
      @filiphracek 5 лет назад +2

      We're only showing UI code in the talk, and you should try not to have business logic in there. Many people would put business logic in the provided object (the ChangeNotifier). Others might have it separate, keeping the model as simple as possible. I believe this is where we get into the larger questions about state management as "all of computer science".

    • @igorbeaver4692
      @igorbeaver4692 4 года назад

      @@filiphracek Hi, Filip!
      Thanks for your answers on even comments with just one like! ) And do you have any lections about this theme? Because every real app is not only UI. It's always a huge chanks of business logic and a lot of models. But for some odd reason, all Flutter pattern talks concentrate only on UI. I'm starting my app now and totally frustrated with this.
      Is this a good idea to use the MVC pattern along with Provider where the provider will be a "view" part? Or business logic would have a good fit into Provider so provider would be just a sort of "Controller" and replace whole MVC pattern?
      Or it's a "model" as you said at the end of this video?
      So hard to make these first steps from another language to Flutter and dart.

  • @greggdourgarian5853
    @greggdourgarian5853 5 лет назад

    not seeing where this was posted anywhere else but the github link for the app at 20:11 is github.com/2d-inc/developer_quest

  • @maximeaubry2613
    @maximeaubry2613 4 года назад

    what do you think about pub.dev/packages/flutter_hooks ?
    is it a good practice to use it ?
    thanks.

  • @pi_mai
    @pi_mai 5 лет назад

    Love the small parts of humor!

  • @stevesmith8588
    @stevesmith8588 5 лет назад +1

    This seems way too complex. With the Provider implementation of MySlider and MyChart, both are now tied to a specific model type. They are sliders and charts for schedules only. It would be better if MySlider, had a callback option that will tell MyHomePage that the value has changed. Then MySlider doesn't need to know what it is a slider for. It is just a generic slider. When the value changes, rebuild MyHomePage and send the data to the slider and chart during the build. MyHomePage would tie it all together. If MySlider really needs to be specialized to be a slider only for a schedule state type, why not pass that object in explicitly as a constructor parameter? Then dependency injection is clear. It is just a few characters to inject directly and saves the complexity and limitations of Consumer(...). Way too much magic.

    • @carlosmariosarmientopinill2019
      @carlosmariosarmientopinill2019 5 лет назад +1

      If you widget tree is very deep, passing the value up would get very messy. What if you had to use lots of schedules in different parts of the app? Also, the solution you're proposing would add more complexity to MyHomePage, which is never the idea. But you're right that for the app shown, the most practical solution is to manage that state in MyHomePage

    • @TerencePonce
      @TerencePonce 5 лет назад

      You can use the MultipleProvider widget then supply all of your ChangeNotifierProviders inside of it at the top level. On the widgets themselves (like MySlider and MyChart), just call Provider.of or Consumer whenever needed. This way, widgets don't have to be tied to anything. You can check out the demo app made by 2Dimensions on how to do that since the codebase used Provider extensively.

    • @rikyriky966
      @rikyriky966 5 лет назад

      This made me think. I’m not convinced with the provider package too.
      I really think that Flutter team must find a better and simpler way for StateManagement. Flutter is great. I can develop and see the results really fast like never before.
      Sometimes, providing many solutions is bad.
      Especially in this video, even though the first approach was not good according to the Flutter team, I’d rather using it. At least the children widgets don’t have to be descendants of the same widget in the tree.
      These are my thoughts relative to my knowledge.

  • @DiazGunturFebrian
    @DiazGunturFebrian 5 лет назад +1

    So, can we use it to provide multiple bloc to our child widget?

    • @pendrive2238
      @pendrive2238 5 лет назад

      There's also an alternative in the flutter_bloc package, called treeprovider or blocTreeProvider... But it's just a nested bloc inside the other BLoC... Anyways it works like a charm, you can have 5 different BLoCs and the child would be accessible to all of them.

  • @climatechangedtsmailer3678
    @climatechangedtsmailer3678 5 лет назад

    Where can I get the code of the Chart and Slider using provider and change notifier from this demo????

  • @PrabhuPatil-Hubli
    @PrabhuPatil-Hubli Год назад +1

    Good job, Filip and Matt. You guys came to rescue when I was struggling with stateManagement in Flutter to get hold on it. Now its crystal clear and I know which pattern to go with and when. Choice is mine. Thanks a lot to both of you...🙏
    @Matt: Viewer would like to see you in new shirt in upcoming conference.... 😄

    • @flutterdev
      @flutterdev  Год назад

      Glad to hear this is helping you on your Flutter journey 🚂
      Happy Fluttering 😎

  • @mahmoudfathy2074
    @mahmoudfathy2074 5 лет назад +1

    I will use it with Bloc, because my current issue with Bloc is providing it through the widget tree, I hope it's efficient in that aspect though.

    • @filiphracek
      @filiphracek 5 лет назад +2

      Very efficient, yes. And provider makes it easy to clean up the provided objects, which comes handy with an approach like BLoC.

    • @honzabittner1856
      @honzabittner1856 5 лет назад +1

      Also, try package:flutter_bloc :)

  • @vivekanandasuggu4247
    @vivekanandasuggu4247 5 лет назад

    Very good explanation about the State mangament. I am loving the work with provider it's very ease to implement when compared with bloc. But why many people out there and In the medium suggesting the bloc. Can anyone help me out is there any down side in provider when compared to bloc. Thank you.

    • @kirill4531
      @kirill4531 5 лет назад

      Flutter is a fastly evolving framework, always pay attention to the date of the post. If it's > 1 year consider it obsolete. Apparently, Provider package didn't exist back then

  • @putinninovacuna8976
    @putinninovacuna8976 5 лет назад +1

    it still complicate
    to understand for me cuz I'm not that smart where is the official doc

    • @shzaizzhang4465
      @shzaizzhang4465 5 лет назад

      you can search the web in order to find more and I believe you will finally find one that you understand.

  • @watchcrap1
    @watchcrap1 4 года назад

    isn't Matt now just tightly coupling his widgets with the provider?

  • @marcinszaek7564
    @marcinszaek7564 5 лет назад +9

    The best Flutter duo

  • @ciapigeon5351
    @ciapigeon5351 4 года назад +1

    im in a constant pain

  • @code-s5211
    @code-s5211 3 года назад

    You can use your favorite search engine to search for it ;)

  • @necipakgz
    @necipakgz 5 лет назад +5

    So now we can use provider instead of BLOC pattern ?

    • @oliverbytes
      @oliverbytes 5 лет назад

      I'm switching to Provider from ScopedModel! So yeah

    • @FilledStacks
      @FilledStacks 5 лет назад

      Yes, or use the provider to provide your block to your widget. pub.dev/packages/provider#-example-tab-

  • @AceixSmart
    @AceixSmart 5 лет назад +1

    Provider vs ScopedModel??

  • @kirill4531
    @kirill4531 4 года назад

    Where can I learn more about nested notifiers? I really often need to update something small within my ViewModel rather than notifying that my entire ViewModel was changed

  • @danvilela
    @danvilela 4 года назад

    When people say BLoC, do they mean flutter_bloc or old school bloc writing a bloc provider? flutter_bloc is indeed too complex.. old school bloc i think it is awesome, just needed some provider package to implement it without "hacks", or code downloaded from blogs.

    • @amugofjava
      @amugofjava 4 года назад +1

      I've found that most are referring to the flutter_bloc package when talking about BLoC which I find very confusing. I'm with you: I think the BLoC pattern is awesome and, if you're familiar with Rx, it's really straight forward.

  • @peppinomolinas9703
    @peppinomolinas9703 2 года назад

    which vs code package is using?

  • @dylanting1628
    @dylanting1628 Год назад

    amazing share for provider .

  • @greenpushsolutions8605
    @greenpushsolutions8605 4 года назад

    Hello, please I want to know if it's okay to get a macbook pro with 8gb ram and 256ssd for flutter programming? Won't xcode and android studio run slowly on it?

  • @0877adri
    @0877adri 5 лет назад

    I just read a chapter "Duplicate Observed Data" in the book "Refactoring" from 1999. As I understood this approach, it is super similar.

  • @apinklas
    @apinklas 5 лет назад +1

    What plugin he just used?

  • @rikyriky966
    @rikyriky966 5 лет назад +2

    This made me think. I’m not convinced with the provider package too.
    I really think that Flutter team must find a better and simpler way for StateManagement. Flutter is great. I can develop and see the results really fast like never before.
    Sometimes, providing many solutions is bad.
    Especially in this video, even though the first approach was not good according to the Flutter team, I’d rather using it. At least the children widgets don’t have to be descendants of the same widget in the tree.
    These are my thoughts relative to my knowledge.

  • @heshansandeepa9471
    @heshansandeepa9471 2 года назад +1

    One of the best tech reviewing videos i have ever seen. ❤

    • @flutterdev
      @flutterdev  2 года назад +1

      Thank you so much for the kind feedback, Heshan! We're so glad to hear you enjoyed this 😎

  • @tak68tak
    @tak68tak 4 года назад

    so now we are going to use Hooks and functional widgets, right?

  • @sorryim5977
    @sorryim5977 3 года назад

    Good video for how to use and link stateful widgets. Thanks a lot!

  • @huule7539
    @huule7539 5 лет назад +1

    Oh. We have new name of scoped model?

  • @mustafa-q5t1y
    @mustafa-q5t1y 3 дня назад

    عاشت الايادي يابه

  • @putinninovacuna8976
    @putinninovacuna8976 5 лет назад

    release flutter for desktop with firebase and firestore feature plugins

  • @tanaaki5220
    @tanaaki5220 2 года назад

    Verry nice, thank so much 🥳🥳🥳

  • @mohammadazam3222
    @mohammadazam3222 4 года назад

    The notifyListeners() does not work when called from inside an async operation like fetching data from network.

  • @Chisegh
    @Chisegh 5 лет назад +1

    Good talk. I'm new to Flutter, and since I come from a React background I used Redux for my first Flutter project. It's working just fine, but I'm not entirely sure what the best practices of initial data fetching in Flutter are. How is everybody fetching initial data?

    • @AIteek
      @AIteek 5 лет назад

      Im also curious about this... in initState() i am sometimes calling 3+ async methods and im not sure if i should chain them and call setState() at the end or use some other approach...

    • @nileshbhakre7050
      @nileshbhakre7050 3 года назад

      I am using bloc, for global state management..it gives complete control on initial state

  • @pratikgajbhiyee7389
    @pratikgajbhiyee7389 5 лет назад

    I have an question, that I have 0 experience in programming language and I want to build the app for my startup, I willing to go learning with flutter, still I can make the apps development with flutter course only?

    • @vedxgaming8216
      @vedxgaming8216 5 лет назад +1

      You can, I did for my Startup. But it will take time, start with small apps and then Scale. And don't worry if the very first version you make isn't the best as it's the First not the last 🙂.

  • @AriefSetiyoNugroho
    @AriefSetiyoNugroho 5 лет назад

    how if i have some routes, and i want to pass the provider to them?? so on destination route i just call the Provider.of(context)

  • @adedokunrokeeb7406
    @adedokunrokeeb7406 2 года назад

    i watched this piece and really love it.. the delivery and explanation of the concept was top notch. this will definately help and aid my journey of becoming a flutter developer. thank you google