Basics of Programming & OOP Revision (3 Lectures)
Concepts of Dart
- What's Dart?
- Variables
- Comments
- Data Types
- Const & Final keywords
- Installing dart plugin
- User input
- Math operations
- If / Switch / logical operators / conditional operator
- Loops
- Arrays and Lists
- Error handling
- Casting
- Functions
- Optional parameters
OOP Concepts
- Intro to OOP
- Classes
- Objects
- Members & Methods
- Constructor
- Inheritance
- Polymorphism
- Abstraction
Async Programming
- Timers and callbacks
- Futures
- Async & Await
Workshop 1
Flutter Setup Environment
- Installing IDE & flutter plugin
- Flutter environment
- Important files
- Running sample app
- Adding packages
Widgets
- Stateless & State full widgets
- Separating resources (colors and strings)
- Scaffold
- Container
- Text
- TextField & TextEditingControllers
- Padding
- Buttons
- Images
- Visibility
- Layouts (Row, column, stack)
- Expanded
- Card
- Listview
- Material App (App bar, drawer, bottom navbar)
- Forms & Data validation
- Feedback (Snackbars)
- Alert dialog
State Management
- What is a widget state?
- Initializing state
- Setting state
- Loading
Navigation
- Navigate to a new screen and backc
- Navigate with named routes
- Send data to a new screen
- Pass arguments to a named route
- Return data from a screen
- Animating a widget across screens
Networking
- HTTP requests
- Casting JSON to model instances
- Fetch and display data
Workshop 2
Architecture
- Reactive programming
- Streams & Sinks
- Stream builder widget
- Stream subscription
- BLOC pattern
- UI, Bloc & API communication
Offline Storage
- Shared preference
- SQLite
Animation
- Implicit animations
- Hero animations
- Staggered animations
Firebase
- Authentication
- Firestore
- Storage
- Cloud Functions
- Cloud Messaging
Workshop 3
Build real applications
- Todo List
- Chat
- Products catalogue
- Shopping Cart
Advanced Topics
- Assets
- Slivers
- Gestures
- Themes
- Splash screens
- Responsive UI
- Internationalization
- Google Maps
Building ChatGPT App With Flutter
- Defining API inside FlutterFlow
- App UI Overview
- Chat Bubbles
- Prompt Field
- Building Chat Bubbles
- Adding Prompt Field
- Connecting with API
Publish your app
- Adding a launcher icon
- Signing the app
- R8
- Reviewing the app manifest
- Reviewing the build configuration
- Building the app for release
- Publishing to the Google Play Store
- Updating the app’s version number
Workshop 4
Final Project