What this book covers
Chapter 1, Getting Started with Flutter, helps you set up your development environment.
Chapter 2, Creating Your First Flutter App, shows how to create your first app, and check that your development environment works as expected.
Chapter 3, Dart: A Language You Already Know, introduces Dart, its syntax, and its patterns.
Chapter 4, Introduction to Widgets, shows how to build simple user interfaces with Flutter.
Chapter 5, Mastering Layout and Taming the Widget Tree, shows how to build more complex screens made of several widgets.
Chapter 6, Adding Interactivity and Navigation to Your app, contains several recipes that add interactivity to your apps, including interacting with buttons, reading a text from a TextField, changing the screen, and showing alerts.
Chapter 7, Basic State Management, introduces the concept of State in Flutter: instead of having screens that just show widgets, you will learn how to build screens that can keep and manage data.
Chapter 8, The Future is Now: Introduction to Asynchronous Programming, contains several examples of one of the most useful and interesting features in programming languages: the concept of the asynchronous execution of tasks.
Chapter 9, Data Persistence and Communicating with the Internet, gives you the tools to connect to web services and persist data on your device.
Chapter 10, Advanced State Management with Streams, shows how to deal with Streams, which are arguably the best tool for creating reactive apps.
Chapter 11, Using Flutter Packages, explains how to choose, use, build, and publish Flutter packages.
Chapter 12, Adding Animations to Your app, gives you the tools you need to build engaging animations in your apps.
Chapter 13, Using Firebase, shows how to leverage a powerful backend without any code.
Chapter 14, Firebase Machine Learning, shows how to add machine learning features to your apps by using Firebase.
Chapter 15, Flutter Web and Desktop, shows you how to use the same code base to build apps for the web and desktop.
Chapter 16, Distributing Your Mobile app, outlines the steps required to publish an app to the main mobile stores: the Google Play Store and the Apple App Store.