Hank G (BookWyrm) reviewed Flutter Apprentice by Mike Katz
Review of 'Flutter Apprentice' on 'Goodreads'
5 stars
As someone who has dabbled with Flutter in the past and has been making an effort to really use it in the last couple months I very much enjoyed this book. While the standard tutorials and looking at code samples got me a long way I always struggled with the best way to lay things out graphically and for UI composition and data sharing to work practically. This book made those concepts concrete and I'm past that now. I hadn't looked at the new Navigation 2.0 stuff just released and their chapter on this got me a long way towards understanding it. I think that one chapter could have been better in explaining the why things work the way they do in Nav 2.0, but honestly none of the sources out there really do a good job with that either. I discovered lots of supporting library suggestions for things like …
As someone who has dabbled with Flutter in the past and has been making an effort to really use it in the last couple months I very much enjoyed this book. While the standard tutorials and looking at code samples got me a long way I always struggled with the best way to lay things out graphically and for UI composition and data sharing to work practically. This book made those concepts concrete and I'm past that now. I hadn't looked at the new Navigation 2.0 stuff just released and their chapter on this got me a long way towards understanding it. I think that one chapter could have been better in explaining the why things work the way they do in Nav 2.0, but honestly none of the sources out there really do a good job with that either. I discovered lots of supporting library suggestions for things like secure local storage, date formatting, etc. that I struggled to find consistent good answers for elsewhere (Stack Overflow, pub.dev, etc.). My one beef is that their HTTP chapter talks to endpoints that requires the user to register. I understand why they did that, so they could keep the "recipe app theme" going, but I'd have preferred it be built around a REST service that didn't require it.
I'm also using Flutter for desktop development so while all of the code/examples assumes it was being done on Android or iOS these all worked perfectly fine on Linux Desktop (with the exception of one short exercise that needed a WebView which doesn't exist right now on Desktop). In a future version I hope they add sections on how to do app packaging for desktop Linux, MacOS, and Windows but since that support is pretty new and still in beta I understand why they do not have it yet.
I read this for free during this during a 3 month Flutter event. I'm going to buy the book now because I enjoyed it so much. I don't need to because the code samples in their GitHub repository are sufficient but what I've gotten out of it is worth the $50.