This course is for anyone who wants to learn how to create beautiful and professional iOS and Android apps using the same code base. This means you can produce your iOS and Android apps out of one Flutter app project, which saves your time and effort in creating and maintaining your apps.
This is a Seven-day (50-hours) course that provides the required knowledge and skills to design and build a complete Flutter™ application. It delivers an extensive training on the main Flutter SDK components and its interactions. Moreover, this course book uses Dart programming language.
This course consists of 11 lessons; the first 3 focus on Dart fundamentals for candidates who do not have enough programming background or already have Java, Kotlin or any other programming background. The other 8 lessons focus on how to create Flutter applications from the beginner to the advanced level. The new features of the course include: more practical exercises and labs, easy to understand lessons, and is supported with graphics and screenshots whenever possible. This course is adequate to provide trainees with the required knowledge and practical skills to be Flutter application developers. It has a duration of 50 hours and no prerequisites.
This course is mapped for Flutter Certified Application Developer exam (exam code: AFD-200).
Why Flutter Certification?
In the previous few years, smart phones have become the go-to platform for developing all sorts of applications. Business applications for banks, TV broadcasters, universities, shopping stores... have been migrating from websites to mobile applications. On the same level, Android and iOS devices are dominating the market share of mobile devices. All this has made Android and iOS application development among the most required skills in the IT sector and in the available IT jobs.
This course is for anyone who wants to learn how to create beautiful and professional iOS and Android apps using the same code base.
No prior mobile experience or prerequisites is required in order to learn this course.
At Course Completion
Upon completing this course, you will be able to:
- Learn the essentials of the Dart Programming Language and all Dart topics which are related to Flutter applications development.
- Design and build a complete Flutter application.
- Develop visual, behavioral and motion rich Flutter widgets.
- Build and use different techniques to navigate Flutter app interfaces.
- Build Google Maps Flutter apps (iOS & Android).
- Add Firebase authentication and database plug-in to Flutter apps (iOS & Android).
- Add and customize more than 100 Flutter widgets (Class).
- Configure Android and iOS app icons.
- Update and fix Flutter code.
- Having the enough knowledge to have full control on the app elements contents.
- Design any iOS and Android app.
- Testing and evaluating your iOS & Android app.
- Publish Android and iOS apps to Google Play and Apple stores.
- Consider yourself as Android and iOS developer.
- Apply for the Flutter certified application developer exam AFD-200.
- Importance of Flutter
- Introduction to Dart
- Writing Dart code
- Installing Dart SDK
- IntelliJ IDEA
- Lab 1: Installing Dart IDE and Writing Dart Program
- nstalling IntelliJ IDEA
- Creating a Dart Project Using IntelliJ IDEA
- Using DartPad
- main( ) function
- Dart Variables
- Dart Data Types
- Input of Information to Dart Program
- Writing Comments
- Dart Conditional Operators
- If Statement
- If – Else Statement
- If…Else and Else…If... Statement
- If Else and Logical Operators
- For Loops
- While Loops
- Do-while Loops
- Break Statement
- Switch Case Statement
- Lab 2: Create a Pizza Order Program
- Function Structure
- Creating a Function
- Function Return Data Types
- Void Function
- Function Returning Expression
- Functions and Variable Scope
Object-Oriented Programming (OOP)
- Creating a Class
- Adding Methods to Classes
- Providing Constructors for Your Classes
- Class — Getters and Setters
- Class Inheritance
- Abstract Class
- Dart Project Structure and Dart Libraries
- Lab 3: Create a Small Overtime Payment Program
- Understanding Flutter
- Flutter Framework
- Android Studio
- What is Android Studio?
- Android Studio Software Prerequisite
- Installing Android Studio
- Flutter SDK
- Installing and Configuring Flutter SDK
- Creating a New Flutter Project
- Setup an Android Virtual Device
- Run a Flutter App
- Installing Flutter on Mac
- Test Your Flutter App on iOS Phone with Windows O.S
- Android Studio Sugar and Spice
- Run your Apps on a Hardware Device (Physical Phone)
- Run your Flutter App on Android Phone
- Run your Flutter App on IPhone Device
- Emulator Debug Mode
- Introduction to Flutter Widgets
- Creating a Flutter App Using Widgets
- What is a MaterialApp widget?
- Lab 4: Creating a Simple Flutter App
- Scaffold Widget
- Image Widget
- Container Widget
- Column and Row Widgets
- Icon Widget
- Layouts in Flutter
- Card Widget
- App Icons for iOS and Android Apps
- Hot Reload and Hot Restart
- Stateful and Stateless Widgets
- Use a Custom Font
- Lab: Creating a Restaurant Menu
- Button Widget
- RaisedButton, FlatButton, and IconButton
- App Structure and Navigation
- Navigate to a New Screen and Back
- Navigate with Named Routes
- Send and Return Data Among Screens
- Animate a Widget Across Screens
- WebView Widget in Flutter
- Lab 6: Navigation and Routing a Pizza Store App
- BottomNavigatorBar Widget
- DefaultTabController, TabBar, and TabBarView Widgets
- ListTile Widget
- ListView Widget
- Drawer Widget
- DataTable Widget
- SelectableText Widget
- Stack Widget
Lab : 7
- Lab A: Creating a Flutter App using BottomNavigatorBar Navigation Technique
- Lab B: Using DataTable Sorting Built-in function
- Input and Selections Text Field Widget
- CheckboxGroup and RadioButtonGroup Widgets
- Date Picker
- Time Picker
- Slider Widget
- Switch Widget
- Dialogs, Alerts, and Panels Alert Dialog Widget
- Cupertino Alert Dialog Widget
- Bottom Sheet
- Modal Bottom Sheet
- Persistent Bottom Sheet
- Expansion Panel Widget
- Snack Bar Widget
Lab 8: Creating a Hotel Reservation App
- What is the JSON ?
- How does Firebase Database work?
- Firebase authentication (Signup and Login to Flutter App)
- Configure Your App to use Firebase Services
- Adding Firebase to your Android App
- Adding Firebase to your iOS App
- Configuring Firebase Authentication
- Login to an App Using Firebase User Accounts
- Logout Configuration
- Firebase Database
- Which database is right for your project?
- Real Time Database
- Cloud Firestore
Lab 9 : Create a User Profile Interface using Firebase
- What is GPS and how does it work?
- The Camera Position
- Adding Google Maps to a Flutter app
- Getting a Google API key
- Adding Google Maps Flutter plug-in as a dependency
- Adding your API key for your Android app
- Adding your API key for your iOS app
- Adding a Google Map on Your Flutter App Screen
- Adding a Google Map Marker
- Google Map Types
- Moving the Camera (Camera Animation)
- Capturing an App User’s Location for iOS and Android Apps
Lab10: Location-Aware Apps Using GPS and Google Maps
- Getting a Google API key
- Creating an App Interface
- Configuring your App to Use Your API Key
- Adding a Google Map on your Flutter App Screen
- Adding a Google Map Marker
- Capturing Users’ Location
- Configuring User App’s Permission
- Testing and Feedback for Your App
- Setting up a Test Environment
- Usability Testing by Participants
- Starting your Test Session
- Analyzing your Test
- Publishing Flutter Apps
- Publishing Android App on Google Play Store
- Publishing iOS app on Apple Store