Flutter Projects Building Cross Platform Applications

Flutter Projects Building Cross Platform Applications

Download Flutter Projects Building Cross Platform Applications

Link Backup

Flutter Projects Building Cross Platform Applications Book Details


Title: Flutter Projects Building Cross Platform Applications
Author: Dominik Hauser
Language: English
No. of pages: 483
Format: PDF, EPUB, Source code

Introduction Flutter Projects Building Cross Platform Applications

The fastest way to learn programming, in any language or framework is… programming. That’s exactly the purpose of this Flutter Projects Building Cross Platform Applications book: helping you learn Flutter by doing.

Flutter is a developer-friendly, open source toolkit created by Google that you can use to create applications for Android and iOS mobile devices, and now also for the web and desktop.

There are eleven projects in this Flutter Projects Building Cross Platform Applications book, covering the main concepts useful to develop real- world apps with Flutter. In each project, you’ll learn and immediately use some of the features that make Flutter so successful: widgets, state management, asynchronous programming, using web services, persisting data, animations, creating full-stack applications with Firebase, and even developing responsive apps that work with different form factors, including the web.

Each project builds an app from scratch. You can choose to follow the flow of the book or skip to any project if you feel confident with the concepts introduced in earlier chapters.

Flutter uses Dart as a programming language. In the first chapter, you’ll see an introduction to Dart, giving you the necessary knowledge to be productive and create your first Flutter app.

In later chapters, you’ll see Flutter projects that go beyond basic examples. You’ll get the opportunity to play with code and get hands-on experience building apps. While you progress through this book, you’ll see that some of the concepts introduced in earlier chapters are used again, in different ways, on later projects, so that you get deeper knowledge on several topics.

Who this Flutter Projects Building Cross Platform Applications book is for

This book is for developers. You should be familiar with any object-oriented programming language: if you understand variables, functions, classes, and objects, this Flutter Projects Building Cross Platform Applications book is for you.

The programming language used in Flutter is Dart. If you’ve never seen Dart before, don’t worry: basic knowledge of languages like Java, C#, Kotlin, Swift, or JavaScript will be enough to follow along with the projects in this book. Dart is an extremely intuitive language for developers, with a smooth learning curve.

This book is not a Dart course, but throughout the book, and in particular in Chapter 1, Hello Flutter, you’ll get all you need to get started with Dart as well.

To sum it up, if you have some knowledge of any object-oriented programming language, and want to start building great mobile or web apps with Flutter, this book is for you!

What this book covers

Chapter 1, Hello Flutter!, is an introductory chapter, where you’ll build “Hello Flutter,” an app that shows the presentation screen of a fictitious travel agent. The project will focus on how to create a very basic app with Dart and Flutter and give you the foundation necessary for the rest of the Flutter Projects Building Cross Platform Applications book.

Chapter 2, Miles or Kilometers? Using Stateful Widgets, shows how to build a Measures Conversion App. The main goal of this chapter is to introduce State into a Flutter app, to make it interactive. In this project, you will use TextFields, DropDownButtons, and the setState() method to update the state of a stateful widget.

Chapter 3, My Time Listening to a Stream of Data, shows a more advanced way of dealing with state: listening to streams of data. In this project, you will create a productivity timer, with an animation based on streams. This chapter will introduce
asynchronous programming in Flutter and several core concepts, such as navigation, using libraries, and storing data.

Chapter 4, Pong Game 2D Animations and Gestures, is about making a simple two- dimension animated game, where a ball will move across the screen, and the player will need to prevent the ball from “falling” out of the screen. The main topics of this chapter include using animations, detecting gestures with the Gesture Detector, and generating random numbers.

Chapter 5, Let’s Go to the Movies Getting Data from the Web, deals with the creation of an app that shows a list of movies taken from a web service. The main topics include using ListViews, parsing JSON data, connecting to remote services through the HTTP protocol, and building GET requests to perform searches on the API. Asynchronous programming in Dart is used throughout the chapter.

Chapter 6, Store That Data – Using Sq(F)Lite to Store Data in a Local Database, shows how to create a shopping list that will be built in this project. The main concepts in this project include using SQLite in Flutter; creating model classes; performing Create, Read, Update, and Delete (CRUD) actions; and using the singleton model.

Chapter 7, Firing Up the App Integrating Firebase into a Flutter App, shows how to create a full-stack application, designing both the frontend UI and the backend in record time, leveraging Firebase.

Chapter 8, The Treasure Mapp Integrating Maps and Using Your Device Camera, builds an app that allows users to mark places on a map and add some data and a picture over it. Pictures will be created by using the camera. This project covers two important features of mobile programming: geolocation and using a device’s camera.

Chapter 9, Lets Play Dice: Knockout Creating an Animation with Flare, focuses on a project where you’ll build a dice game in Flutter, using Flare, an online tool that makes it easy to create beautiful animations and include them directly in Flutter.

Chapter 10, ToDo App Leveraging the BLoC Pattern and Sembast, shows how to leverage the BLoC (Business Logic Component) pattern to manage app state. You’ll also see how to use the Simple Embedded Application Store database to store data in your device.

Chapter 11, Building a Flutter Web App, shows how to build a Flutter app that runs on a browser and how to create responsive user interfaces.

To get the most out of this Flutter Projects Building Cross Platform Applications book

Some experience in at least one object-oriented programming language is strongly recommended.

I suggest playing with the code while you type it: try asking yourself if you could write a project in a different way. This will make the concepts much clearer and easier to reuse in your future projects. Answering the questions at the end of each project will also help you get a different perspective on the app you built in the chapter.

In this book, we use the Flutter version 1.12.13 and Dart version 2.7.2. In order to follow along with the code, you will need a Windows PC, Mac, Linux, or Chrome OS machine connected to the web, with the permissions to install new software. An Android or iOS device is suggested but not necessary as there are simulators/emulators that can run on your machine. All software used in this book is open source or free to use.

If you are using the digital version of this Flutter Projects Building Cross Platform Applications book, we advise you to type the code yourself or access the code via the GitHub repository (link available in the next section). Doing so will help you avoid any potential errors related to the copy/pasting of code.

If you like this book or want to share your ideas about it please write a review on your favorite platform. This will help us make this book better, and you’ll also earn the author’s and reviewers’ everlasting gratitude.