Call us at 1-800-413-0939
Hands On Technology Transfer
gsa

Xamarin Programming Course

Attend face-to-face, remote-live, on-demand or on site at your facility.

On-Demand Training with Personal Facilitation
Top

Xamarin Cross-Platform Mobile Application Development

Delivery Options: Attend face-to-face in the classroom, remote-live or via on-demand training.

Pricing

Face-to-face or remote-live: $2495

On-demand: $1495

Discounts: We offer multiple discount options. Click here for more information.

Duration

Face-to-face or remote-live: 5 Days

On-demand: Approximately 35 hours of coursework with personal facilitation, to be completed in a four week span.

Registration

Face-to-face: Click here to view our schedules and register for in-person sessions.

Remote-live: Click here to register for live remote class sessions within a date range of your choosing.

On-demand: Click here to register for on-demand training with personal facilitation, on a start date of your choosing.

Students Will Learn

  • Configuring a Xamarin development system
  • Xamarin.Forms vs Xamarin.Native
  • Anatomy of a Xamarin application
  • XAML for Xamain.Forms apps
  • Handling XAML events
  • Customizing XAML.Forms controls on the Android and iOS
  • Working with data on the local device
  • Making calls to, and processing data from, RESTful services
  • How to build Xamarin.Android apps
  • How to build Xamarin.iOS apps
  • Working with Touch
  • Working with Location Services
  • Using NuGet and the Xamarin Store

Course Description

This course teaches how to use Xamarin as a cross-platform mobile development tool to build native Android and iOS apps using C# and a .NET code base.

Students begin by learning how to use Xamarin.Forms to build Android and iOS apps using a single code base. Students will learn how to use XAML to define the UI layer for all platforms. By installing the app on both Android and iOS simulators and real test devices, it's seen how the UI renders as native controls on each platform, thereby giving the app a native look and feel.

Coverage of XAML includes how to use XAML controls to interact with the user, how to use XAML to manage the UI layout, and how to connect UI events to C# event handlers. Students will also learn how to custom the UI appearance of an app for a specific platform.

Students also learn how to interact with both local data stored on the device and how to communicate with, and process data from, RESTful services using Xamarin.Forms.

Xamarin supports Xamarin Native, which allows developers to write separate native UI code for each platform. In this course, students learn how to install and configure Xamarin.Android, and then examine Android application architectures. Exercises provide practice building Android applications in C# using Xamarin.Android and the Android designers and controls.

Students also learn how to install and configure Xamarin.iOS, and then examine native iOS application architectures. Students practice building Xamarin.iOS applications in C# using the iOS designers and controls.

The course also examines how to work with touch and location services for both Android and iOS devices.

Course Prerequisites

C# programming experience is required to learn Xamarin.

Course Overview

Introduction to Cross-Platform Development
  • Examining the Android, iOS and Windows UI Experiences
  • Options for Cross-Platform Mobile Development
  • Problems with Cross-Platform Mobile Development
  • Getting to Know Xamarin
  • Anatomy of a Xamarin Application
  • Understanding Portable Class Libraries
Configuring your Development Environment
  • Installing Visual Studio and Xamarin
  • Configuring the Mac for iOS Apps
  • Testing Apps Using Emulators
  • Testing Apps on Physical Devices:
  • Building a "Hello World" Shared Project in Visual Studio
Improving Your C#
  • Reviewing C# and the .NET Framework
  • Understanding await/async
  • Understanding RESTful Services
Part I: Introduction to Xamarin.Forms
  • Configuring the Visual Studio Project
  • Introducing XAML
  • Handling Events
  • Using XAML to Layout the UI
  • Using XAML Controls
  • Platform Specific Calls
Part II: Introduction to Xamarin.Forms
  • Working with Text
  • Working with XAML Resources
  • Working with XAML Styles
  • Data Binding
  • Working with Bitmaps
Customizing Xamarin.Forms Controls on Each Platform
  • Custom Renderers
  • Implementing and Customizing Views
  • Using Dependency Injection
Working with Xamarin.Android for Native UI
  • Configuring the Visual Studio Project
  • Understanding Android Concepts
  • Events, Protocols and Delegates
  • Designing a UI for the Android
  • Layouts
  • Widgets
  • Accessing Android APIs
  • Calling Existing Java Code
Working with Xamarin.iOS for Native UI
  • Configuring the Visual Studio Project
  • Understanding iOS Concepts
  • iOS Model-View-Contrroller
  • Events, Protocols and Delegates
  • Designing a UI for iOS
  • StoryBoards
  • Types of UIViewControllers
  • Accessing iOS APIs
  • Calling Existing Objective C/Swift Code
Working with Data
  • Local Data Options
  • Calling RESTful Services
Working with Touch
  • Understanding Touch Events
  • Using Gesture Recognizers
Working with Location Services
  • Understanding GeoLocation
  • Implementing "Where Am I"
Extending Your Application with NuGet and the Xamarin Components Stores
  • Cloud Service Features (ex: Authentication Support, Azure Mobile Client, etc)
  • Libraries (ex: Barcode Scanning, Messaging, Credit Card Scanning, etc)
  • User Interface Components (ex: Charts, Carousels, Signature Pads, etc)

Reviews

I really liked the format of the class - the labs gave me a chance to apply what was being discussed in class as well as giving me a chance to work with the tool. The instructor brought a lot of industry experience to the table and was able to further clarify various examples with real experiences which I found to be invaluable.
— K.R., Trican Well Service


Great class! The instructor did a WONDERFUL job - was very knowledgeable, engaging, and helpful. Great teacher, one of the best I've had. The class was very well laid out. I was skeptical that we'd be able to cover so much ground, but we received valuable, in-depth training on each section.
— J.K., Eastman Chemical

Course Schedule

Choose a city below to view a schedule and registration options. If you have any questions, please call us at 978-250-4299 between 9:00 am - 5:00 pm EST.