Mastering Flutter App Development
Learn to build powerful Mobile Apps for Android and iOS with Multiple Projects
Watch PromoInterested Learners Join in our Telegram Group | Interested Learners Join in our Whatsapp Group
Use Coupon Code "EARLYBIRDFLUTTER" to get $35 off.
* Offer Valid Till 3rd June
Flutter is an open-source UI software development kit created by Google. It is used to develop applications for Android, iOS, Windows, Mac, Linux, Google Fuchsia and the web.
What you will learn ?
- Learn Flutter and Dart from the ground up, step-by-step
- Build engaging native mobile apps for both Android and iOS
- Use features like Google Maps, the device camera, authentication and much more!
- Learn how to upload images and how to send manual and automated push notifications
- Learn all the basics without stopping after them: Dive deeply into Flutter & Dart and become an advanced developer
Pre-Requirements:
- There is no pre-requirement for this course. If you are interested in Mobile Application Development for Android and iOS then in this course, I will be explaining everything from the scratch step by step with whole lots of demos and with multiple projects so that by the end of this course you will become a professional mobile app developer.
Date | Weekdays / Weekend | Timings |
---|---|---|
June 3rd | MON - FRI | 7:00 AM to 8:30 AM (IST) |
Course Agenda: (~40 Hours)
Dart Language:
- An Introduction to Dart
- Getting started with Dart
- Understanding why Flutter uses Dart
- Introducing the structure of the Dart language
- Variables, Datatypes and Functions
- Lists and Maps
- Introduction to OOP in Dart
- Dart classes and constructors
- Interfaces, abstract classes, and mixins
- Understanding Dart libraries and packages
- Introducing async programming with Futures and Isolates
Flutter Introduction :
- Basic requirements
- Setting up the development environment
- Using Android Studio and VS Code
- Running a flutter project on Android and iOS
- Flutter compilation (Dart)
- Flutter rendering
- Hot reload and full-restart
- Understand how it all works
- Working with the Flutter CLI
- Comparisons with other mobile app development frameworks
- Widgets introduction
- Hello Flutter
Widgets :
- What are widgets?
- The build() method
- Stateful and Stateless widgets
- Understanding built-in layout widgets
- Creating a UI with widgets
- Layout widgets like Container, Column, Row, Card and Stack
- Expanded and Flex Widgets
- ListViews and ListView Builder
- Creating custom widgets
More Widgets and Navigation
- Scaffold, AppBar, FloatingActionButtons
- More Buttons, Icons and Images
- User input widgets - Form, TextField, Switch, RangeSlider
- Snackbars and Dialogs
- BottomSheet and ModalBottomSheet
Handling User Input and Gestures
- Handling User Input and Gestures
- Handling user gestures
- Input widgets
- Validating Input (Forms)
- Custom input and FormField
Theming and Styling
- Theming and Styling
- Theme widgets
- Material Design
- iOS Cupertino
- Using custom fonts
- Dynamic styling with MediaQuery and LayoutBuilder
Routing: Navigating between Screens
- Routing: Navigating between Screens
- Understanding the Navigator widget
- Named routes
- Screen transitions
- Hero animations
Architecture – Business Logic Component (Bloc) Pattern
- BLOC's vs Stateful Widgets
- The Purpose of Streams with Blocs
- Generating a New Project
- App Boilerplate
- Annotating Stream Types
- Issues with Bloc Access
- Shortcut Access with Getters
- Public vs Private Fields
- Improving the BLOC API
- Cleaning Up Controllers
- Bloc Application
- Application implementing the Bloc Pattern
Firebase Plugins
- Firebase Plugins
- Firebase overview
- Firebase authentication
- NoSQL database with Cloud Firestore
- Cloud Storage with Firebase Storage
Developing Your Own Flutter Plugin
- Developing Your Own Flutter Plugin
- Creating a package/plugin project
- A plugin project structure
- Adding documentation to the package
- Publishing a package
- Plugin project development recommendations
Accessing Device Features from the Flutter App
- Accessing Device Features from the Flutter App
- Launching a URL from the app
- Managing app permissions
- Importing a contact from the phone
- Integrating the phone's camera
Platform Views and Map Integration
- Platform Views and Map Integration
- Displaying a map
- Adding markers to the map
- Adding map interactions
- Using the Google Places API
Improving User Experience
- Improving User Experience
- Accessibility in Flutter and adding translations to apps
- Communication between native and Flutter with platform channels
- Creating background processes
- Adding Android-specific code to run Dart code in the background
- Adding iOS-specific code to run Dart code in the background
Widget Graphic Manipulations
- Widget Graphic Manipulations
- Transforming widgets with the Transform class
- Exploring the types of transformations
- Applying transformations to your widgets
- Using custom painters and canvas
Animations
- Animations
- Introducing Animations
- Using animations
- Using AnimatedBuilder
- Using AnimatedWidget
Testing, Debugging, and Deployment
- Testing, Debugging, and Deployment
- Flutter testing – unit and widget testing
- Debugging Flutter apps
- Profiling Flutter apps
- Inspecting the Flutter widget tree
- Preparing apps for deployment
Your Instructor
Sekhar Srinivas ( Microsoft Certified Trainer ) Well known for his good track record as one of the best I.T faculty in imparting his unique techniques in training from past 26 years and trained more than 1 Lakh 60 Thousands plus students on various Microsoft Technologies Platforms incl. VB6.0, ASP, VB.NET, C#, ASP.NET , Silverlight , ASP.NET MVC, SharePoint 2013, Azure, Xamarin.Andriod, Xamarin.iOS, Xamarin Forms, Flutter, Python, R and JavaScript Frameworks such as Angular and React.Sekhar has a rich experience in technology consulting, providing solutions for complex and diverse problems to corporate, he is a person,who always believe in updating himself with the upcoming technologies to deliver the best to the trainees. Sekhar is one of the technical evangelist for CSharpCorner and Microsoft User Group providing trainings on latest technologies.