Xamarin Course Curriculum
Xamarin
Xamarin
Introduction to Xamarin
- Introduction to Xamarin
- Xamarin vs. Hybrid Framework vs. Native Framework
- Xamarin Development IDE – Visual Studio and Xamarin Studio
- Xamarin Architecture
- Introduction to Mono
Xamarin Development
- Xamarin Cross platform solutions
- Xamarin Family
- Xamarin Development Approaches
- Xamarin Advantages
- Xamarin Disadvantages
Setup the Development Environment on Windows
- Setting up Xamarin on Windows
- Configuring Visual Studio and SDK for Android and Windows UWP
- Configuring Visual Studio Emulator for Android and UWP
- Verify your Xamarin environment on Windows
Setup the Development Environment on Mac
- Setting up Xamarin on Mac
- Configuring XCode, Visual Studio and Android SDK
- Verify your Xamarin environment
Xamarin Project Types
- Xamarin Shared Projects
- Xamarin Portable Class Libraries
Xamarin.Android
Xamarin.Android
- Introduction to Android
- Android Architecture
- Introduction to Xamarin.Android
- Xamarin.Android Application Structure
- Xamarin.Android Architecture
- Xamarin.Android Code Compilation
- Xamarin.Android APIs
Android fundamentals
- Activities
- Views
- Layouts
- Resources
- Manifest
Android Activity
- Activity Life Cycle
- Activity Life Cycle Events
- Activity States
Running, Deployment, Testing
- Deploying app to Emulator and Devices
- Debugging in Emulator
- Debugging in Device
- Android Debug Log
- Testing app in different emulator
Xamarin.iOS
Xamarin.iOS
- Introduction to iOS
- iOS Architecture
- Introduction to Xamarin.iOS
- Xamarin.iOS Application Structure
- Xamarin.iOS Architecture
- Xamarin.iOS Code Compilation (AOT)
- Xamarin.iOS APIs
iOS fundamentals
- Storyboard
- Segues
- Views
- View Controllers
- Layouts
- Resources
iOS Life Cycle
- iOS Life Cycle
- iOS Life Cycle States
Running, Deployment, Testing
- Deploying app to Simulator and Devices
- Debugging in Simulator
- Debugging in Device
- Testing app in different Simulator
Xamarin Forms
Xamarin Forms
- Introduction to Xamarin Forms
- Xamarin Forms Architecture
- Xamarin Forms UI
- Xamarin Forms UI Rendering Process
- Xamarin vs. Xamarin Forms
- Xamarin Forms Code Sharing Strategy
- PCL or Shared Project
- Advantages of PCL over Shared Project
Xamarin Forms Fundamentals
- Pages
- Views
- Layouts
- Cells
Xamarin Forms Views/Controls and Views Alignment
- Xamarin Forms Views/Controls
- Comparing Xamarin Forms Controls with Native
- Views Alignment
Xamarin Forms App Life Cycle
- Xamarin Forms Application Methods
- Comparing Android and iOS and Windows App Life Cycle
XAML
XAML
- Introduction to XAML
- How XAML Works?
- Advantages of XAML
- XAML vs. Code
- XAML Compilation
- Xamarin – XAML Page
XAML Properties
- XAML Properties Syntax
- Attached Properties
- Content Properties
- XAML Markup Extensions
- Other XAML Standard Markup Extensions
Resources
- Introduction to Resources
- Resource Dictionary
- Static and Dynamic Resources
- x:Static
- Styles
Xamarin Forms Fundamentals
Layouts
- Xamarin Forms Layouts
- Layout Options
- Stack Layout
- Grid Layout
- Relative Layout
- Relative Layout - Constraint Expression Properties
Layouts Contd.
- Absolute Layout
- Absolute Layout Flags
- Comparing iOS, Android and Xamarin.Forms Layouts
- Content View
- Scroll View
- Frame
Data Binding and MVVM
- Data Binding
- Data Binding Modes
- MVVM
- MVVM Event Handling
- Events and Handlers
- ICommand Interface
- Command with a Parameter
- Triggers
Navigation
- Introduction to Navigation
- Hierarchical Navigation
- Modal Pages
- A Simple Master Detail
- Master Detail Page
- Tabbed Page
- Carousel Page
- Displaying Popups
- Toolbar Items
Data Access – SQLite and RESTful Services
- Setting Up SQLite
- Using SQLite
- INotifyPropertyChanged Interface
- Consuming RESTful Services
Lists
- Populating a Basic List
- Cell Appearance
- Custom Cells
- Grouping Items
- Handling Selections
- Context Actions
- Pull to Refresh
- Search Bar
Multimedia
- Multimedia API
- Playing Audio
- Playing Video
- Accessing Camera
- Alarm Manager
- Gallery
Telephony API
- Telephony Manager
- Phone State
- SIM state
- SIM Number
- Network Type
- Internet Status
- Making Phone Call
- Send SMS
Notification
- Notification API
- Creating Notification Builder
- Setting Notification Properties
- Attaching Actions
- Issuing Notification
Maps
- Maps Initialization
- Platform Configuration
- Using Maps
- Maps Types
- Google Map
Themes
- Light Theme
- Dark Theme
- Customizing Theme

Project Development
Discussing Project Architecture
- Understanding Application layers
- Discussing Application Entities Properties
- Discussing Relationship among Application Entities
Developing Project
- Designing Application Architecture
- Developing Service layer using Entity Framework Code First
- Implementing User Login and SignUp Process
- Storing User Details in Local DB
Navigation and Profile
- Creating Side menu
- Updating Profile
My Store
- Creating My Store for product listing
- Searching Products
- Product Details
Shopping Cart
- Creating Shopping Cart
- Adding Products to Shopping Cart
- Removing Products from Shopping Cart
Payment Gateway
- Understanding Payment Gateway Process
- Integrating Payment Gateway
- Sending/Receiving data to and from Payment Gateway
- Placing order
Store Deployment – Google, Apple
- Preparing the App for store deployment
- Adding Application Icons and Images
- Adding Splash Screen
- Packaging and Distributing the App
- Uploading to App Store