Beginning Flutter with Dart
Minimum price
Suggested price

Beginning Flutter with Dart

A Step by Step Guide for Beginners to Build a Basic Android or iOS Mobile Application

About the Book

The main advantage of this Book is it will upgrade with Flutter. As I regularly write Flutter blog at my website

As a result, I always keep adding those posts in new chapters, so that you can update your knowledge from lesser known facts to unknown facts about Flutter.

For example, although in the first part we used old Provider package, we've updated that to the new version in the later section.

Flutter is a free and open-source mobile UI framework created by Google. Therefore, it doesn't cost you any money.

There are other tools for the mobile application developers. But Flutter has distinguished itself for its simplicity.

Moreover, Flutter has one single codebase that runs everywhere.

By the way, Flutter uses on programming language in the background – Dart.

Therefore, if you’re a beginner and want to learn Flutter from scratch, you must have a knowledge of Dart, as well. And, this book will help you to achieve this.

Now, if you learn Flutter, with the help of one programming language Dart, you will be able to create two mobile applications at the same time.

One for Android and the other for iOS.

However, to start with you need to install Flutter that consists of SDK or Software Development Kit.

In addition, the Flutter framework that consists of User Interface library based Widget will help you to build any design you want to do.

This book will teach you from the very beginning. How to install Flutter, what IDE you need. Above all, how to build your first mobile application.

Because Flutter uses Dart programming language, we will start with Flutter. But side by side we will also learn Dart.

We will see how Dart programming concepts are implemented in Flutter.

Why Flutter?

Why you will learn Flutter?

It is because, Flutter is much simpler to build mobile applications than other available tools.

As time passes by, we’ll keep updating this book. That is the plus point. As Flutter get upgraded, adding new features, you’ll learn them also in this book.

It will happen, because, in my blog I’ll write it first, and then I’ll update the book adding new chapters at the end.

Flutter for Beginners

In the first part of the book, an absolute beginner will learn the language basics of Dart programming.


Because learning Dart is extremely important to understand the core Flutter Widget, and Application logic.

With the help of this knowledge we will learn to build a native cross platform mobile application from scratch using Flutter tool.

About the Author

Sanjib Sinha
Sanjib Sinha

Sanjib Sinha has written six books for Apress; he also publishes at Leanpub and Amazon to share his learning-experience. Sanjib writes regularly at his websites: on Flutter, Dart and PHP 8.

Bundles that include this book

Suggested Price
Bundle Price
Suggested Price
Bundle Price

Table of Contents

  • 1. Getting Started
    • Download latest Flutter
    • Who should read this book?
    • Flutter for Windows
    • Flutter for macOS and Linux
    • Relation between Flutter and Dart
    • Functions and Objects
    • Building the mobile application from scratch
  • 2. Flutter and Dart Architecture: Understanding Class and Object
    • A Short Introduction to Class and Objects
    • How two objects interact
    • More about classes and objects
    • How Flutter and Dart work together
    • Positional and Named argument
  • 3. Dart Language Basic and its implementation in Flutter
    • Variables Store References
    • Built-in Types in Dart
    • Suppose, you don’t like Variables
    • More about built-in types
    • Understanding Strings
    • To be True or to be False
    • Introduction to Collections: Arrays are Lists in Dart
    • Get, Set and Go
    • Operators are Useful
    • Equality and relational operators
    • Type test operators
    • Assignment operators
    • Summary of this Part
    • Implementing Dart concepts to Flutter
  • 4. Digging Deep into Dart to learn Flutter Logic
    • Control the flow of your code
    • If and Else
    • Conditional Expression
    • Looking at Looping
    • While and Do-While
    • Understanding the Looping Patterns
    • For Loop Labels
    • Continue with For Loop
    • Decision making with Switch and case
    • Digging Deep into Object-Oriented Programming
    • More about Constructors
    • How to implement Classes
    • More on Functions or Methods
    • Lexical Scope in Function
    • A few words about Getter and Setter
    • More than one Constructor
    • Changing the UI of the Flutter projects
  • 5. How to build Flutter UI using Widgets
    • Common Widgets in Flutter
    • Powerful Basic Widgets
    • Anonymous Functions: Lambda, Higher Order Functions, and Lexical Closures
    • Exploring Higher-Order Functions
    • Inheritance and Mixins in Dart
    • Mixins: Adding more Features to a Class
  • 6. Layouts in Flutter, Tips and Tricks
    • Customize child Widgets
    • Layout mechanism of Flutter
    • Library of layout widgets
    • Abstract Class and Methods
    • Advantage of Interfaces
    • Static Variables and Methods
    • The ‘Closure’ is a Special Function
    • Data Structures and Collections
    • Lists: Fixed Length and Growable
    • Set: An Unordered Collections of Unique Items
    • Maps: the Key, Value Pair
    • Queue is Open-Ended
    • Callable Classes
    • Exception Handling
    • Dart Packages and Libraries
  • 7. Introduction to State Management and Form Validation in Flutter and Dart
    • State is mutable
    • Life cycle of State
    • Role of Controller in TextField Widget
    • How List and Map used in StateFul DropdownButton Widget
    • How to Valiadate a Form using State Management
  • 8. Provider: A recommended approach to manage State and Model-View-Controller Pattern
    • Different approaches to state management
    • A Step by Step guide to use Provider
    • Model-View-Controller Patterns
  • 9. Everything about Flutter Navigation and Route
    • Why do you use onGenerateRoute in flutter?
    • How do you use onGenerateRoute in Flutter?
    • How to use a dynamic initial route?
    • What is Flutter Navigation and how does Flutter Navigator work?
    • How do you pass data from one class to another in flutter?
    • What is enum in Dart flutter? How to use enum in Flutter?
    • How do you change the theme on Flutter?
    • How do you name a route in Flutter?
    • How do you pass data from one screen to another in flutter?
    • How do you make a Flutter app from scratch?
  • 10. More on Flutter UI, List, Map, and Provider Best Practices
    • How do you use decoration in a container in Flutter?
    • What is a RichText in flutter?
    • Stateful vs Stateless Flutter
    • What is GridTile Flutter? How do you use grid tiles in Flutter?
    • What is change notifier provider in Flutter?
    • How do you change the font on flutter?
    • How do I store persistent data in Flutter?
    • What is data model in Flutter?
    • How do you pass data between screens in flutter?
    • How do you pass data with provider in Flutter?
    • What is provider pattern Flutter?
    • How do you use ChangeNotifierProvider in Flutter?
    • What is ChangeNotifierProvider value?
    • What is navigator and route in Flutter?
    • How do you pass arguments in Navigator pushNamed?
  • 11. Google’s Flutter 2.5 and Dart 2.14, What’s New
    • What is MaterialBanner?
    • How do you Map a dart list in Flutter 2.5?
    • How to start with an app template in Flutter 2.5
    • The latest version of Flutter comes with many new features
    • How do you do localization in flutter 2.5?
    • How do you pass data to a widget in flutter 2.5?
    • How to Pass and Receive data in Flutter 2.5
  • 12. What Next?

Causes Supported

Amazon Watch

Supporting Indigenous Peoples. Protecting the Amazon.

Amazon Watch is a nonprofit organization founded in 1996 to protect the rainforest and advance the rights of indigenous peoples in the Amazon Basin. We partner with indigenous and environmental organizations in campaigns for human rights, corporate accountability and the preservation of the Amazon's ecological systems.

We envision a world that honors and values cultural and biological diversity and the critical contribution of tropical rainforests to our planet's life support system. We believe that indigenous self-determination is paramount, and see that indigenous knowledge, cultures and traditional practices contribute greatly to sustainable and equitable stewardship of the Earth. We strive for a world in which governments, corporations and civil society respect the collective rights of indigenous peoples to free, prior and informed consent over any activity affecting their territories and resources. We commit, in the spirit of partnership and mutual respect, to support our indigenous allies in their efforts to protect life, land, and culture in accordance with their aspirations and needs.

The Leanpub 45-day 100% Happiness Guarantee

Within 45 days of purchase you can get a 100% refund on any Leanpub purchase, in two clicks.

See full terms

Do Well. Do Good.

Authors have earned$10,795,682writing, publishing and selling on Leanpub, earning 80% royalties while saving up to 25 million pounds of CO2 and up to 46,000 trees.

Learn more about writing on Leanpub

Free Updates. DRM Free.

If you buy a Leanpub book, you get free updates for as long as the author updates the book! Many authors use Leanpub to publish their books in-progress, while they are writing them. All readers get free updates, regardless of when they bought the book or how much they paid (including free).

Most Leanpub books are available in PDF (for computers), EPUB (for phones and tablets) and MOBI (for Kindle). The formats that a book includes are shown at the top right corner of this page.

Finally, Leanpub books don't have any DRM copy-protection nonsense, so you can easily read them on any supported device.

Learn more about Leanpub's ebook formats and where to read them

Write and Publish on Leanpub

You can use Leanpub to easily write, publish and sell in-progress and completed ebooks and online courses!

Leanpub is a powerful platform for serious authors, combining a simple, elegant writing and publishing workflow with a store focused on selling in-progress ebooks.

Leanpub is a magical typewriter for authors: just write in plain text, and to publish your ebook, just click a button. (Or, if you are producing your ebook your own way, you can even upload your own PDF, EPUB and/or MOBI files and then publish with one click!) It really is that easy.

Learn more about writing on Leanpub