Why Navigator 2.0 Sucks

  Рет қаралды 14,062

Tadas Petra

Tadas Petra

3 жыл бұрын

Navigator 2.0 had the right intentions, but I think the delivery of it was not the best. All the changes that came with Navigator 2.0 are ones that are necessary, but I think it is a bit overcomplicated and confusing. I try to teach it and give some examples, and show how it could have been done better
Reference Links
✦ Article From Flutter: / learning-flutters-new-...
✦ Video From Flutter: • DevFest Saudi Arabia 2...
✦ My Example: github.com/tadaspetra/flutter...
✦ Simple Example: github.com/carloshwa/flutter-...
✦ Complex Example: github.com/orestesgaolin/navi...
✦ Most Popular Package: pub.dev/packages/auto_route/v...
Connect With Me
✦ My Website: tadaspetra.com/#/
✦ Live Coding: / tadaspetra
✦ Twitter: / tadaspetra
✦ Chat on Discord: / discord
✦ Instagram: / tadaspetra
I also do lots of Investing
✦ FREE stock: join.robinhood.com/tadasp2
My Top 5 Books:
✦ Brave New World - Aldous Huxley: amzn.to/2JyaK96
✦ 1984 - George Orwell: amzn.to/3lmLzUk
✦ The Millionaire Fastlane - MJ Demarco: amzn.to/2ViGthn
✦ The 4-Hour Workweek - Timothy Ferriss: amzn.to/3mnypYD
✦ Homo Deus - Yuval Noah Harari: amzn.to/2VlFRYe
KZfaq Gear
✦ MacBook Pro 16 inch: amzn.to/3qe4MeF
✦ MX Master 3 Mouse: amzn.to/2VlkZQS
✦ Canon Rebel SL3: amzn.to/2ViIfPv
✦ Hiearcool USB Hub: amzn.to/3llsIsP
✦ iPad Pro 12.9 (3rd Generation): amzn.to/36kaVy0
✦ Apple Pencil (2nd Generation): amzn.to/2JoHy4y
✦ Yeti Microphone: amzn.to/37oRNOq
✦ Rode Boom Arm: amzn.to/3lnEKCb
✦ Blue Radius II Shock Mount: amzn.to/2JoIfea
✦ Blue RPop Filter: amzn.to/39rQSiZ
✦ Sony WH1000XM3: amzn.to/3moWgHh
Thank you for watching!
#Navigator2.0 #navigation #flutter

Пікірлер: 81
@LUKAS3675
@LUKAS3675 3 жыл бұрын
I totally agree, I feel that I was writing the package myself rather than using something that is supposed to be built in
@tadaspetra
@tadaspetra 3 жыл бұрын
Yes that is exactly my feeling
@hawkybae
@hawkybae 3 жыл бұрын
If they deprecate Navigator 1.0, we're all doomed.
@blank-vw2sb
@blank-vw2sb 3 жыл бұрын
throw DeveloperException();
@tadaspetra
@tadaspetra 3 жыл бұрын
I agree, but my argument was if that was a big reason for 2.0 being so confusing, and if possible to make 2.0 simple to use for everybody, then maybe deprecate it
@relativityboy
@relativityboy 3 жыл бұрын
Nothing a little rewrite won't fix.
@blank-vw2sb
@blank-vw2sb 3 жыл бұрын
@@tadaspetra How about making a package which uses navigator 2.0 under the hood? Which gives a more simpler API
@tadaspetra
@tadaspetra 3 жыл бұрын
@@blank-vw2sb there are some packages out there for it. I mentioned them later in the video. My favorite one right now is auto_route I think
@DThompsonDev
@DThompsonDev 3 жыл бұрын
Great video Tadas!
@tadaspetra
@tadaspetra 3 жыл бұрын
Thanks Danny 😊
@coldstar96
@coldstar96 2 жыл бұрын
Navigator 2 seems to be focused on web. In mobile its common to open same screens stacked on top of each other. For example in instagram, you tap a profile, tap a photo, tap on others profile from comments, and so forth. This means, I need to keep track of page history which fits better with imperitive. I found myself implementing Nav 1.0 (push and pop) for Nav 2.0 I just need android back button to be handled on the nested navigator but it only works on Nav 2.0 theres no way around it.
@jaimepremy
@jaimepremy 3 жыл бұрын
How do you think nav 2.0 compares to the nav capabilities of the GetX package? I've been using this for a while now (not just for routing, but for state mgmt also) and I think it's very easy to use.
@tadaspetra
@tadaspetra 3 жыл бұрын
Personally I haven't used GetX for a while. I actually haven't done that much development except for one project the past couple months. My thought about GetX is it makes things very simple. Which is great if you are starting out. It works well and I don't see much wrong with it. But personally I have been using Riverpod, because it has some nice safety features as well as other things. Nav 2.0 allows you to control the whole stack, I don't believe GetX lets you do that. Again, those are specific things that are probably not necessary to have a complete app. My thoughts are GetX is fine, and if it does the job for you, no need to change anything. But personal preference is Riverpod. And I don't really have a preference for navigation yet. I haven't looked into many solutions, but I think auto_route package looks to be a good one
@darshanrander1950
@darshanrander1950 3 жыл бұрын
Finally got a Navigator 2.0 video from you😅😂
@adsk172839
@adsk172839 3 жыл бұрын
Šaunuolis! Geri video :)
@tadaspetra
@tadaspetra 3 жыл бұрын
Aciu :)
@yunuscanip6789
@yunuscanip6789 3 жыл бұрын
Hi Tadas, I wish you happy New year. What do you think about make tutorial of two packages(dio, freezed). I like your videos and have a nice day.
@tadaspetra
@tadaspetra 3 жыл бұрын
I will look into it 😊
@tldnr7942
@tldnr7942 3 жыл бұрын
You saved me Thank u so muchhhh😭
@meyubaraj
@meyubaraj Жыл бұрын
The complexity is in understanding but not in the navigator itself. With the help of package like go_router, it's far more easy and quite understandable and also explains the system flow through router and in long run I myself feel like it keeps the flow of app structured with the help of properly defined routes.
@tadaspetra
@tadaspetra Жыл бұрын
I've heard good things about go_router
@icicle29
@icicle29 3 жыл бұрын
Totally agree with you! Nav 1.0 is good and simple, but if they want to bring a change for the best, it should've been like an update, not a whole backward compatible remake, in my opinion that is.
@lkledu2
@lkledu2 9 ай бұрын
Totally agree, 2.0 needs too much setting up before letting the dev use it, it also too prone to implementation errors
@elgusotube11
@elgusotube11 3 жыл бұрын
I very much agree with this explanation about Navition 2.0. I still prefer GetX for Navigation and State Management among other very cool features. Thank for share with us your opinion.
@tadaspetra
@tadaspetra 3 жыл бұрын
I’m happy most people agree with me. I was worried I’d miss a major flaw in my arguments and would looks dumb 😂
@zzzyyyxxx
@zzzyyyxxx Жыл бұрын
God don't use GetX
@kaihsiangju
@kaihsiangju 3 жыл бұрын
Agree 👍
@ifrit1537
@ifrit1537 3 жыл бұрын
Hey, great video, I have understood most of the context, my english listening is not the best. I have been having a problem with Navigator 2.0, specially with native navigation, for example, when I press the back button in Android the app is closed.
@VishalSingh-ov9oo
@VishalSingh-ov9oo 3 жыл бұрын
You might be popping all pages so now it's only one page so aap get closed
@devraphe
@devraphe 2 жыл бұрын
Same thing I thought, why do I need a package to fulfill a basic need like navigation. Still freaks me out
@thethirdtomas3
@thethirdtomas3 3 жыл бұрын
Hi Tadas. Did you find any good remedies for this problem 6 months later...?
@tadaspetra
@tadaspetra 3 жыл бұрын
Nope, but I also haven't looked for it much. I do know the Flutter team is aware of this, and im pretty sure is working on making it easier to use somehow
@furkanvatandas4819
@furkanvatandas4819 2 жыл бұрын
​@@tadaspetra So, are there any updates 8 months after this video :D
@tadaspetra
@tadaspetra 2 жыл бұрын
@@furkanvatandas4819 Nope. I know the packages are getting some praise though, so worth a look
@marufsharia
@marufsharia 3 жыл бұрын
I use GetX for route management. By the way, which is best you think?
@tadaspetra
@tadaspetra 3 жыл бұрын
Whatever works for you is the best 😊. I think the "best" is Nav 2.0 since it gives you so much control, but it might be too hard to use, so I don't even know haha
@kevinchadwick8993
@kevinchadwick8993 3 жыл бұрын
I actually prefer the imperative way for Navigation. You execute and you're done like with html href. More boilerplate for multiple page management is understandable but not for core web support. I'm not sure if forward and back seemed to work in the browser on the dev channel with navigator 1.0 today though. Can anyone confirm?
@tadaspetra
@tadaspetra 3 жыл бұрын
I am pretty sure forward and backward never worked with imperative option, and was part of the reason they decided to make a 2.0. But yea you have some valid arguments.
@LeagueRandomPlayer
@LeagueRandomPlayer 3 жыл бұрын
hey Tadas, you should rank state management packages and navigation packages and make it as a revisited video. OMG i finished looking the video, this is too much of a sipderweb, lol. it seems very powerfull and granular but the boilerplate code is a bit much.
@tadaspetra
@tadaspetra 3 жыл бұрын
Oh man I can just imagine the backlash of making a ranked state management video 😂. But I am thinking about it. It would definitely be more of an opinion video, since they’re all good solutions. And really comes down to personal preference
@LeagueRandomPlayer
@LeagueRandomPlayer 3 жыл бұрын
@@tadaspetra yes you have to be carefull, jjust put "MY" in your vid so thats enough for viewers to know that is your opinion
@RajA-me9cl
@RajA-me9cl 3 жыл бұрын
Many beginner flutter developers are facing problem with responsiveness for all devices. Can you please make a tutorial Tadas? 🙏🏼
@tadaspetra
@tadaspetra 3 жыл бұрын
I made one a long time ago, it’s in the flutter basics playlist. But I’ll look into making an updated one
@RajA-me9cl
@RajA-me9cl 3 жыл бұрын
@@tadaspetra That would be very helpful Tadas.
@MohamedSaad-hc3ol
@MohamedSaad-hc3ol 3 жыл бұрын
Great 👌 Can you make video how to build chat app using firebase I am follow you from Egypt 🌷
@tadaspetra
@tadaspetra 3 жыл бұрын
I will look into it. Thank you for following along :)
@RandalLSchwartz
@RandalLSchwartz 2 жыл бұрын
At 6:20, that's not a backslash. Just a slash. Backslash is like \, slash is /.
@tadaspetra
@tadaspetra 2 жыл бұрын
I will have to redo the video now because of this 🙃
@darshanrander1950
@darshanrander1950 3 жыл бұрын
Deprecating 1.0 is not a really good idea this is what I feel🤔 There was only one time when I felt of using navigator 2.0 for my mobile app. Hoping that there will be some better tutorial or better way of implementing it.
@tadaspetra
@tadaspetra 3 жыл бұрын
I agree at this point it would not be a good idea to depreciate it. BUT if 2.0 was easy to use and simple to understand, I think it would make a lot of things easier, and 1.0 would not be necessary
@darshanrander1950
@darshanrander1950 3 жыл бұрын
@@tadaspetra yes deprecate it only if they make it easy...
@ahmedadnan5875
@ahmedadnan5875 3 жыл бұрын
I have read and seen many example about Navigator 2.0 and it was too confusing I thought they just made it for web. "yes I know, I am stupid"
@tadaspetra
@tadaspetra 3 жыл бұрын
I think for mobile apps, 1.0 is sufficient. But even then, I feel like there is a reason why they made a 2.0. To solve problems. Would of just been nice if it was a bit simpler.
@storylineteam
@storylineteam 3 жыл бұрын
This is not something new! They promised full web support for 2020 but things didn't go well(the only major feature was a very bad implementation of nullable types), so they are bringing new features without the necessary abstraction layer that makes them user-friendly and wait for the community to help. This is not the first time! They did the same with other core features like inherited widget and let the community provide the syntactic sugar(provider etc). This is the open-source era... where is no reason to hire programmers when you can transform the whole community into free employees (Microsoft did the same with C#).
@tadaspetra
@tadaspetra 3 жыл бұрын
Yea you are right. But I guess I just wish it was different 😕
@tadaspetra
@tadaspetra 3 жыл бұрын
Yea you are right. But I guess I just wish it was different 😕
@dma6967
@dma6967 3 жыл бұрын
I use flutter_modular for route management
@TheBadFred
@TheBadFred 3 жыл бұрын
GetX seems to be much more strait forward....
@ExtraServingsBTS
@ExtraServingsBTS 3 жыл бұрын
replaces too much, from what I've seen. I can rip and replace the router, but not Provider. Need to do more research.
@jrheisler
@jrheisler 3 жыл бұрын
Ugh!
@mostafafahimi4588
@mostafafahimi4588 3 жыл бұрын
Wtf is this Navigator 2.0! So much boilerplate
@kelvinsmith4894
@kelvinsmith4894 3 жыл бұрын
Google is the reason why I appreciate Apple for their way of doing things Most times you don't even need documentation to understand some of Apple's frameworks
@tadaspetra
@tadaspetra 3 жыл бұрын
I've never worked with Apple's frameworks, I should give it a try
@gwapster13
@gwapster13 3 жыл бұрын
Except CoreData? 🤪
@adianblabla
@adianblabla 2 жыл бұрын
Same goes for me, but in reverse. - took me 3 months to be able to join Apple developer because of Apple's shitty payment system; - rejections reasons are extremely vague and sometimes outright retarded; - Testflight sucks big time; - a responsive splash screen is harder to implement on IOS; The list can go on.
@andim2772
@andim2772 3 жыл бұрын
All you need is GetX, and do not be sprayed with other packages
@eliscassarosa9755
@eliscassarosa9755 3 жыл бұрын
Very nice 😍💋 💝💖♥️❤️
@thehumbleservant21
@thehumbleservant21 3 жыл бұрын
What happened to you ?
@blank-vw2sb
@blank-vw2sb 3 жыл бұрын
@@thehumbleservant21 😂😂😂😂🤣🤣🤣🤣🤣
@trapeye3464
@trapeye3464 3 жыл бұрын
ur title lol.. should change it.. best explain about navigator 2.0 .. but ur clickbait is backward.. actually I dont want click this kind of clickbait.. but the video itself is good and understand than other video
@tadaspetra
@tadaspetra 3 жыл бұрын
Appreciate the feedback. Any suggestions?
@trapeye3464
@trapeye3464 3 жыл бұрын
@@tadaspetra I dont know, "Navigator 2.0 is complicated than you think" something like that, if someone make clickbait "'is bad or suck" it like drama to me.. no information at all.. but your video different
Riverpod Simplified | Easy State Management
14:17
Tadas Petra
Рет қаралды 43 М.
How to use Flutter Navigator 2.0? | Warning: it's complicated
17:35
Learn App Code
Рет қаралды 32 М.
Best Toilet Gadgets and #Hacks you must try!!💩💩
00:49
Poly Holy Yow
Рет қаралды 19 МЛН
Spot The Fake Animal For $10,000
00:40
MrBeast
Рет қаралды 178 МЛН
Задержи дыхание дольше всех!
00:42
Аришнев
Рет қаралды 3,6 МЛН
Sigma Kid Hair #funny #sigma #comedy
00:33
CRAZY GREAPA
Рет қаралды 37 МЛН
Flutter Roadmap | How to Learn Flutter
16:07
Tadas Petra
Рет қаралды 81 М.
Clean and Organized Code with Linting
9:41
Tadas Petra
Рет қаралды 10 М.
Rendering - Flutter Deep Dive
8:28
Tadas Petra
Рет қаралды 10 М.
Flutter Performance Tips for Fast Apps
9:12
Tadas Petra
Рет қаралды 19 М.
Intro to Flutter Navigation & Routes | Navigator 1.0 and 2.0
12:36
Learn Flutter with Me
Рет қаралды 14 М.
The Story of Next.js
12:13
uidotdev
Рет қаралды 558 М.
DevFest Saudi Arabia 2020: Navigator 2.0
1:01:55
Flutter
Рет қаралды 13 М.
Top 10 State Management for Flutter
10:46
Tadas Petra
Рет қаралды 35 М.
Dart Isolates - Flutter Basics
7:47
Tadas Petra
Рет қаралды 21 М.
Best Toilet Gadgets and #Hacks you must try!!💩💩
00:49
Poly Holy Yow
Рет қаралды 19 МЛН