32 LM Muthu Complex, 100 Feet Road, Karaikudi-630001 +91 63803 44771 acrosyskkdi@gmail.com

Flutter & Dart Mobile App Development Course

Duration: 4 Months / 16 Weeks
Level: Beginner to Job-Ready
Technology Stack: Dart, Flutter, Material UI, Firebase, REST API, JSON, Git, GitHub, Android Studio, VS Code and mobile app deployment
Month 1: Dart Programming and Flutter Foundations
  • Introduction to mobile application development
  • Native vs cross-platform development
  • Introduction to Flutter
  • Flutter architecture overview
  • Installing Flutter SDK
  • Installing Android Studio
  • Installing Visual Studio Code
  • Flutter SDK configuration
  • Android emulator setup
  • Creating the first Flutter application
  • Dart programming language overview
  • Variables and constants
  • Data types
  • String operations
  • Operators
  • Type conversion
  • Input and output
  • Conditional statements
  • Loops
Practical: Build simple Dart programs such as calculator, student grade and billing applications.
  • Functions
  • Optional and named parameters
  • Arrow functions
  • Lists
  • Sets
  • Maps
  • Collection methods
  • Classes and objects
  • Constructors
  • Named constructors
  • Inheritance
  • Method overriding
  • Encapsulation
  • Abstract classes
  • Interfaces
  • Mixins
  • Static members
  • Enums
  • Exception handling
Mini-project: Console-based employee and product management application using Dart.
  • Null safety
  • Nullable and non-nullable types
  • Late keyword
  • Final and const
  • Generics
  • Callable classes
  • Extensions
  • Getters and setters
  • Futures
  • async and await
  • Streams
  • Stream controllers
  • Error handling in asynchronous code
  • JSON data handling
  • Serialization concepts
  • Packages and dependencies
  • pubspec.yaml
  • Dart package management
Mini-project: Weather data application using asynchronous Dart programming.
  • Flutter project structure
  • Widgets and widget tree
  • StatelessWidget
  • StatefulWidget
  • Build method
  • MaterialApp
  • Scaffold
  • AppBar
  • Container
  • Row and Column
  • Stack
  • Expanded and Flexible
  • Padding and SizedBox
  • Text and Image widgets
  • Icons
  • Buttons
  • Card and ListTile
  • Flutter themes
  • Colors and typography
Mini-project: Responsive Flutter profile and business information application.
Month 2: Flutter UI, Navigation and State Management
  • Flutter layout system
  • SingleChildScrollView
  • ListView
  • GridView
  • ListView.builder
  • GridView.builder
  • SafeArea
  • MediaQuery
  • Responsive layouts
  • Orientation handling
  • Custom reusable widgets
  • Images and assets
  • Custom fonts
  • Decorations and borders
  • Gradients
  • Shadows
  • Cards and custom UI components
Project: Responsive food delivery application UI.
  • TextField
  • TextFormField
  • Form widget
  • Form validation
  • TextEditingController
  • DropdownButton
  • Checkbox
  • Radio buttons
  • Switch
  • Date picker
  • Time picker
  • SnackBar
  • Dialog boxes
  • Bottom sheets
  • Flutter navigation
  • Navigator
  • Named routes
  • Passing data between screens
Mini-project: Student registration and profile management application.
  • Understanding Flutter state
  • setState()
  • Widget lifecycle
  • State management concepts
  • Provider introduction
  • ChangeNotifier
  • Consumer
  • Provider architecture
  • Managing application state
  • Sharing state between screens
  • Loading and error states
  • Reusable state classes
  • State management best practices
Project: Shopping cart application with product and cart state management.
  • Flutter animation fundamentals
  • Implicit animations
  • AnimatedContainer
  • AnimatedOpacity
  • AnimatedSwitcher
  • Explicit animations
  • AnimationController
  • Tween animations
  • Hero animations
  • Page transitions
  • Custom transitions
  • Bottom navigation
  • Drawer navigation
  • TabBar and TabBarView
  • Custom AppBar
  • Dark mode
  • Theme management
Mini-project: Modern animated travel booking application.
Month 3: APIs, Firebase and Database Integration
  • Understanding REST APIs
  • HTTP methods
  • GET, POST, PUT and DELETE
  • HTTP status codes
  • JSON structure
  • http package
  • Making API requests
  • Parsing JSON responses
  • Model classes
  • Serialization and deserialization
  • API error handling
  • Loading indicators
  • Network connectivity handling
  • Headers and query parameters
  • API authentication concepts
Mini-project: Flutter product catalogue application connected to a REST API.
  • Introduction to Firebase
  • Creating a Firebase project
  • Connecting Flutter with Firebase
  • Firebase Authentication
  • Email and password authentication
  • User registration
  • User login
  • Logout
  • Password reset
  • Authentication state
  • Cloud Firestore
  • Collections and documents
  • Adding documents
  • Reading documents
  • Updating documents
  • Deleting documents
  • Firestore queries
  • Real-time data
Project: Firebase-powered user registration and task management application.
  • Firebase Storage
  • Uploading images
  • Uploading documents
  • Downloading files
  • Deleting files
  • Displaying Firebase images
  • Firebase security rules
  • Firestore security rules
  • Authentication-based access
  • Role-based access concepts
  • Firebase Cloud Messaging
  • Push notification concepts
  • Notification permissions
  • Handling notification clicks
  • Secure configuration practices
Mini-project: Employee profile application with image upload and Firebase authentication.
  • Local storage concepts
  • SharedPreferences
  • Saving application settings
  • Local user preferences
  • SQLite concepts
  • sqflite package
  • Creating local databases
  • Creating tables
  • Insert operations
  • Update operations
  • Delete operations
  • Select queries
  • Offline-first concepts
  • Data synchronization
  • Local caching
Project: Offline expense tracker application using local database storage.
Month 4: Advanced Flutter, Testing and Deployment
  • Flutter application architecture
  • Clean architecture concepts
  • Feature-based project structure
  • Repository pattern
  • Service layer
  • Model layer
  • Presentation layer
  • Dependency injection concepts
  • Reusable API services
  • Error and exception handling
  • Application logging
  • Environment configuration
  • Development and production configuration
  • Code organization best practices
Project: Build a scalable Flutter application using clean architecture principles.
  • Flutter debugging tools
  • Debug console
  • Flutter DevTools
  • Widget testing
  • Unit testing
  • Integration testing
  • Test-driven development concepts
  • Mocking dependencies
  • API testing
  • Handling application crashes
  • Performance optimization
  • Reducing unnecessary rebuilds
  • Image optimization
  • Memory management
  • Application profiling
Practical: Test and optimize a complete Flutter application.
  • Git fundamentals
  • GitHub repositories
  • Commit and push
  • Branches
  • Pull requests
  • Merge conflicts
  • Team development workflow
  • Flutter release builds
  • Android APK generation
  • Android App Bundle
  • App signing concepts
  • Application versioning
  • App icons and splash screens
  • Google Play Console overview
  • Play Store publishing process
  • App privacy and permissions

Students will create and deploy a complete mobile application containing:

  • Modern responsive Flutter UI
  • Dart-based application logic
  • Multiple screens
  • Navigation
  • Form validation
  • State management
  • REST API integration
  • Firebase Authentication
  • Cloud Firestore database
  • Firebase Storage
  • Image upload
  • User and admin roles
  • Search and filtering
  • Push notification concepts
  • Local data storage
  • Error handling
  • Testing
  • GitHub repository
  • Android release build
  • Deployment preparation

Suggested Final Projects

  1. Food Delivery Mobile Application
  2. E-Commerce Shopping Application
  3. Hospital Appointment Application
  4. Employee Management Application
  5. Expense Tracker Application
  6. Learning Management Application
  7. Online Banking Application
  8. Job Search Application
  9. Travel Booking Application
  10. Salon and Appointment Booking Application

Assessment Structure

AssessmentWeightage
Weekly Dart and Flutter practical assignments15%
Dart programming mini-project10%
Flutter UI project10%
Firebase and API integration project15%
Advanced Flutter project15%
Final Flutter full-stack project30%
Attendance and presentation5%

Course Outcomes

After completing this course, students will be able to:

  • Develop applications using Dart programming.
  • Understand object-oriented programming concepts in Dart.
  • Create responsive mobile interfaces using Flutter.
  • Build reusable Flutter widgets and components.
  • Implement navigation and form validation.
  • Manage application state using Provider and other state management concepts.
  • Create animations and modern mobile user interfaces.
  • Connect Flutter applications with REST APIs.
  • Integrate Firebase Authentication and Cloud Firestore.
  • Upload and manage files using Firebase Storage.
  • Implement local database and offline storage.
  • Apply clean architecture and reusable coding practices.
  • Test and debug Flutter applications.
  • Use Git and GitHub for application development.
  • Generate Android release builds and prepare applications for deployment.

Required Software

  • Flutter SDK
  • Dart SDK
  • Android Studio
  • Visual Studio Code
  • Android Emulator
  • Git and GitHub
  • Firebase
  • Postman
  • Google Chrome
  • Chrome Developer Tools

© Acrosys Technologies.2010. All Rights Reserved.