Software development principles for Flutter Apprentice

Hello everyone. I am new in mobile development and software development in general. I want to build a MVP mobile app for my startup. We are two and I am the main developer. I am learning Dart Apprentice and in parallel Flutter Apprentice. I know that to build a maintenable and scalable app software development skills are needed. My questions are:

  1. Is this book follow the principles of software development?
  2. Is learning Flutter Apprentice give me the skills to design an scalable, secure and maintenable app or would I complete with other skills?
  3. Can someone give me a roadmap please?


I think this book is perfect. Explanations are great and you will have a perfect boilerplate to code your app. (SQLite to persist datas).

Code organisation is just amazing (and difficult to learn :sweat_smile:).

To create a flutter / firebase / riverpod app (I think it’s the better combo to create a solid app), I think you have to find another boilerplate to optimize your time.

This book is the best content I read on Flutter


Hi @olivaxa! Thank you for your answer which still comforts me to learn Flutter with this book although I would have liked to have answers on the questions that I highlighted above :blush:

We have a learning path dedicated to Flutter
Flutter Fundamentals |

There’s not a lot specific to architecture but my suggestion is to learn the all the basics before jumping into the topic of architecting solid and maintainable apps.
In the apprentice book there’s some discussion about architecture, specifically when presenting the topics Provider and saving data with SQLite.

@seydina … This book is to learn about Flutter and Dart not Software Development in general.

IMHO, it’s not designed for either of your first 2 questions. In addition, you have to realize that both Flutter and Dart are improving on a very rapid basis. So, some of the methods used in the book aren’t the best, but anything over a month old that deals with Flutter and Dart, may be not the best approach. For example, I THINK Navigator 1 was used in the 1st edition of the book. Then, Navigator 2 came out and was used in the 2nd edition. Then, something else came out within the last 6 months called GoRouter and that now appears to be the best one in a lot of people’s minds (but not necessarily everyone’s). But that’s also not the definitively better one. And since it’s only been out 6 months max, this book couldn’t gamble on that one when it was published.

Finally, there’s no one software development roadmap that will work for everyone. You might want to look at this one (I just started to look at it yesterday, so I’m not even sure it’s one of the better ones). It’s by Resocoder And ask on all the Flutter / Dart channels that they mention in the weekly book club meetings on Wednesdays. Or ask in the chat there, what SD resources are out there.


Thanks a lot @funkyboy and @jefff9511 ! Your explications and links are useful. I am going to continue my search as you said on community and others forums

Thank you, the explanations are very useful for beginners.