- No Dart and Flutter previous knowledge is required!
- Able to run Android Studio or Xcode Simulator
What is Dart ?
An awesome programming language! Dart is a client-optimized object oriented programming language for fast apps on any platform.
What is Flutter ?
Flutter is Google’s portable UI toolkit to build beautiful, natively-compiled applications for mobile, web and desktop from a single codebase. Flutter is written in Dart language.
What is this course about ?
We will start learning the very basic features of Dart programming language and programming concepts itself. I will explain the very base concepts of object oriented programming like variables, functions and classes. I will make sure you have all the required knowledge in order to start working with flutter framework. We will start in DartPad environment but will later transit to the home of our coding editors and we will work on a very nice console application.
After dart introduction, we will start learning Flutter Framework. I will explain the basics of flutter, what widgets are, why you need widgets and how they work. We will start with simple examples which will later grow into complex components of our application. I will introduce different architectural patterns on how to manage a state of our application. We will always follow best practices introduced by the Google Flutter team.
I chose a very practical approach of explaining concepts. We are going to create an application where users can join and create various meetups. The application is backed by my own API server with connected database.
Our application will consist of many screens and components. Therefore we will create an amazing navigation. I will explain on how to create forms, how to manage data of inputs and afterwards we will use the gained knowledge to create registration and login functionality.
Users will have access to all of the meetups and they will be able to see detailed information about each meetup. Detail view of a meetup will contain additional information about a meetup, joined people and created threads view. Not authorised users will have restricted access to a meetup which will change after an user will authenticate.
Authenticated users can join and leave meetups, view threads, create meetups and access joined people page. Authentication changes are handled in real time and a view is updated immediately.
The final feature we will be working on will be 'meetup create'. I will introduce you to new types of inputs and we will create some custom ones. After a meetup is created other people can join.