Over the course of a full day (9 hours) we will bring you up to speed on a modern mobile development using Microsoft's Xamarin.Forms platform. With this platform developers can write powerful mobile apps in C# that target the iOS, Android, and Universal Windows Platform (UWP). Using Xamarin's powerful mobile framework these applications compile down to native code on each platform and deploy directly into the various app stores. All this while allowing you to share a single C# codebase across for most of your app.
Attendees will be introduced to the various components of the Xamarin platform on all platforms and we will demonstrate how to efficiently set up your development environments on either Windows (via Visual Studio) or Mac (via Visual Studio for Mac). We will configure various development environments for debugging native applications using both emulators and physical devices.
For those new to mobile development we will discuss and demonstrate how Xamarin allows you to take advantage of many of the unique capabilities found on mobile platforms such as GPS, cameras, contacts and calendars, and local file storage.
Students will get the opportunity to set up and build a cross platform mobile app that demonstrates how to:
- Organize your code and take advantage of patterns such as MVVM
- Efficiently communicate with server side API's in an environment with intermittent connectivity
- Support common mobile navigation paradigms
We will demonstrate running and debugging this application across all device platforms using emulators and/or physical devices as available.
We will also discuss and briefly demonstrate some best practices for overcoming some of the common challenges found in mobile development:
- Providing key functionality to users when offline
- Caching data and images locally
- Sending and responding to push notifications
- Accessing device specific functionality while still maximizing shared code
Next we will introduce attendees to the process for deploying native mobile applications to testers via the HockeyApp platform and how this tool allows you to manage your beta cycles. As a final step we will discuss how to deploy your apps to the various app stores and the gotchas developers may encounter during this process.
Whether you are new to mobile development or have developed mobile applications using other tools, this workshop is a great way to jump start your mobile development skills using the Xamarin platform.
Software developers with experience with C# and the .NET framework. Familiarity with mobile development concepts will definitely be helpful but are not required.
- Personal Laptop (Mac or Windows)
- Available hard drive space (and rights) to install new tools and SDK's
- If wanting to use a Mac OS, attendees should have the newest version of Xcode installed as well as Xamarin Studio: https://www.xamarin.com
- If wanting to develop on a Windows machine with Visual Studio, the latest Xamarin plugins for Visual Studio should be installed: https://www.xamarin.com/visual-studio
- Optional: iOS or Android device if wanting to deploy/debug on own device
- Optional: Active Apple Developer account if wanting to debug on local iOS device (not required to use emulator or Android devices): https://developer.apple.com/