Currently Flutter is one of the most popular cross platform framework amongst the developers. Flutter targets multiple platforms from a single code base. In this course, you will learn how to build apps for Android and iOS using the core components of Flutter. Also, you will learn syntaxes and essential features of Dart Programming Language since Dart is used to build Flutter projects.
You will begin with Dart Programming Language and you will begin from scratch. Dart is a powerful language and heavily optimized for Flutter. You will learn many features of Dart, specially those are required for Flutter. You will learn Lambda Expressions which will help you work functionally and alos Null Safety will protect your code from crashing due to Null Pointer Exception. You will learn about Object Oriented concepts like Inheritance, Polymorphism, Abstraction and Mixin that can help you to write your code in a modular format.
You will be introduced with many Widgets-the main core components of Flutter. The more you know about Widgets, the more you know Flutter. It's also important to take few considerations while chosing Widgets, because at the end of day, performance play a key role in any software development. Widgets need to be refractored and you will learn how to seperate codes into reusable Widgets and Methods. You will also learn the basic State Management approach using Stateful Widget and the necessity of Stateless and Stateful, where to use, when to use and why to use them in a proper way.
You will learn Provider - a simple yet powerful approach for State Management and also know how this approach can turn your project in a extendable, expandable pattern. You need to understand the state and then chose which approach is best for you. State Management is a very crucial part of Flutter and many developers are tempted with many approaches and end up overdoing things. You will learn exactly what you need to identify and manage the states of you app in an optimized way.
To persist data, this course covers both the local and cloud persistance. Local Database is important to cache data and also for apps those really dont' need to share its data to the world. You will learn SQLite and CRUD operations and migrations also. You will use Firebase for cloud solution, a powerful backend backed by Google. Firebase provides many services, both in free and paid subscription. Authentication, Realtime Database, Storage, Messaging, Functions are the key services that has been covered in this course.
You will learn how to make web requests and fetch JSON and convert it to Dart objects. Dart provides a convenient package for handling network operations and web requests.
In parallel with learning, you will be practicing the conventions and recommendations for writing good codes using principals, patterns and good practice approaches.
By the end of this course, you will be able to build any kind of mobile apps using Flutter and will have a strong foundation and clear concept.