-
Learning by doing
-
Trainers with practical experience
-
Classroom training
-
Detailed course material
-
Clear content description
-
Tailormade content possible
-
Training that proceeds
-
Small groups
In the course Xamarin Mobile Development participants learn to create cross-platform apps with the Xamarin Framework, the .NET framework and C#.
With Xamarin native apps are developed for Android and iOS devices based on a shared code base in C#. Apps built with Xamarin use standard native user interface controls that not only look like the user expects, but also behave that way.
Xamarin apps can access the full API of the underlying platform including platform specific things such as Augmented Reality Kit from Apple and Android Multi-Window mode. In addition apps developed with the Xamarin Framework platform use specific hardware acceleration and are compiled to native code resulting in optimal performance.
The course starts with an introduction to the Xamarin tooling such as device emulators and the integration in Visual Studio. Next attention is paid to the principles of Cross Platform Development with App Navigation techniques, Xamarin.Forms and Portable Class Libraries. Markup in XAML, the various User Interface elements and layout options are also discussed.
Then the MVVM Architecture, the use of App lifecycle events and the data binding between user interface elements and the underlying code are treated. Page navigation is also covered here.
Triggers and Behaviors are also part of the course program. Triggers allow you to declaratively specify actions in XAML that will be executed when certain conditions are met. Behaviors allow functionality to be added to User Interface Controls without subclassing them.
Attention is also paid to the integration of REST services for displaying and changing data via remote calls from a device. Additionally asynchronous calls with the async and await mechanism are covered.
Also part of the course is data access with a local SQLite data source. Finally dependency injection is treated and a number of advanced topics such as messaging and the Xamarin.Forms shell are discussed.
The Xamarin Mobile Development course is intended for developers who want to use the Xamarin Framework to create cross-platform mobile apps for iOS, Android and Windows.
To participate in this course knowledge and experience with programming in C# or Java is required. Experience with Visual Studio and Mono for Android is desirable.
The theory is discussed on the basis of presentations and is interchanged with exercises. Illustrative demos are used to clarify the concepts. Course times are from 9.30 to 16.30.
After successful completion of the course participants receive an official certificate Xamarin Mobile Development.
Module 1 : Xamarin Intro |
Module 2 : Xamarin Development |
Module 3 : XAML Markup |
What is Xamarin? Xamarin extends .NET Cross Platform Development Xamarin Features Xamarin Architecture Xamarin Advantages MVVM Architecture iOS API Coverage Android API Coverage Xamarin Installation NuGet Package Management |
Xamarin Development Visual Studio Integration C# versus F# App Class and Main Page Android SDK and iOS SDK Android Emulators iOS Emulators Shared Project Xamarin Android Xamarin iOS Real Device Connections |
XAML Markup XAML Anatomy Code Behind Files XAML Layouts XAML Tags XAML Attributes Property Elements Attached Properties Markup Extensions Shared Resources x:Static Extension |
Module 4 : Xamarin Forms |
Module 5 : App Lifecycle |
Module 6 : Data Binding |
Xamarin Controls Buttons and Labels Entry Control Editor Control Stacks and Grids Tab Pages CollectionView ListView ItemsSource Popups Custom Renderers |
Lifecycle Methods OnStart OnSleep, OnResume Page Navigation Events PageAppearing PageDisappearing Modal Navigation Events ModelPushed, ModelPopped ModalPushing, ModelPopping Android Activity Lifecycle iOS Lifecycle |
Bindable Infrastructure MVVM Architecture BindableProperty and BindingBase LINQ Expression Object BindingContext Binding Modes SetBinding Method INotifyPropertyChanged IValueConverter x:Reference Binding Binding Markup Extension |
Module 7 : Page Navigation |
Module 8 : Triggers and Behaviors |
Module 9 : Database Access |
Start Pages Back Button Navigation Modal Pages Modeless Pages PushAsync PushModelAsync Navigation Bar Task Objects PopAsync PopModalAsync Dynamic Page Generation |
Trigger Objects PropertyChanged Handler Trigger Actions EventTriggers ScaleUpAndDownAction Data Triggers and MultiTriggers Combining Conditions Behaviors BehaviorEntryValidation Behaviors with Properties Responding to Taps |
Using SQLite in Android Using SQLite in iOS SQLite and ORM SQLite Packages Using External Storage Synchronization to Cloud iOS location Manager Classes Using Maps op iOS Using Maps on Android Translate Location Coordinates Tracking Applications |
Module 10 : Rest API Access |
Module 11 : Dependency Injection |
Module 12 : Advanced Topics |
Public REST API Resource ID's Standard Methods Data Contracts Building proxies Asynchronous patterns Async and await REST in Android REST in iOS XML and JSON Access |
Inversion of Control Dependency Service IoC container Native Code Access Platform Agnosticity Platform Registration Platform Resolution Interface Implementations Xamarin.Essentials Registering ViewModels |
Messaging Publish and Subscribe Loose Coupling Scalability Messaging Center Unsubscribe Xamarin.Forms Shell Shell Navigation Flyout Menu Bottom and Top Tabs |