Course Outline
Xamarin course overview
Xamarin allows you to build native mobiles apps for mobile platforms such as iPhone, Android, Windows Phone and Blackberry using C#, Visual Studio and .NET. Some of the features that Xamarin supports are camera, compass, contacts, files, geolocation and media etc.
Xamarin supports the following platforms:
- Apple iOS
- Google Android
- Microsoft Windows Phone
This Xamarin app development course is designed to discuss advanced Xamarin app development. After completing our Xamarin app training course you would be able to build applications using Xamarin. The complete course is hands-on based.
At the end of the course we will built a practical Xamarin App in the class. This app development project will ensure that you can build your own apps for iPhone and Google Android.
This short classroom based Xamarin course is hands-on and instructor-led. This training can be taken as a part-time evening course, during the week or even on the weekends. A list of all upcoming public Xamarin training course is given on training dragon website. Each course is restricted to a maximum of ten delegates to ensure an excellent training experience.
Who is Xamarin training for?
This training course is for you if you are interested in creating mobile applications across all devices and mobile operating systems more cost effectively and efficiently.
You do not need to learn objective-C or Java to build your own iPhone or Android apps, instead you can use your current C# .NET experience to build cross platform apps for Apple iOS, Google Android and Microsoft Windows phone.
Prerequisites for Xamarin course
- A good knowledge of C#, Visual Studio and .NET is required. We provide C# training and ASP.net training.
- It would be helpful to have have some experience of building website for mobile phone. You can learn mobile website design in our mobile web design course.
What will I get?
- Training from professional Xamarin application developers:
Training Dragon consultants have been implementing professional app for many years. Those consultants write and teach our Xamarin app training courses, so their experience directly informs course content.
- Real-time Practice and Projects:
Our Xamarin courses are designed to get you started in Xamarin app development. We work on industry related projects in this Xamarin app course. If you have a project or an idea that you wanted to turn into an app then present that idea during the course and our trainers will help you to work on your own application.
- Course Material:
Xamarin app development electronic notes are included in this course.
- Course Completion Certificate:
After completing this training you will receive Xamarin app development course completion certificate.
- Support and Careers Advice:
After the course if you have any problems or questions regarding Xamarin app do not hesitate to contact us. Training Dragon’s trainers are expert in their fields and if you need any help with you career choice, please speak to one of our trainers.
Xamarin Course Contents
Introduction to Xamarin platform
- Introduction to Mobile Development
- Differences between Starter vs. Indie vs. Business licenses.
- Xamarin store
- What types of mobile apps can be created with Xamarin Studio vs. Visual Studio on both Windows and OS X.
- Requirements for creating a Xamarin.iOS application
Xamarin and C# (Optional day training to make this course a 5-days course. This is not required for C# developers)
- Collections in C#
- More about classes and methods
- Shifting from Console to Mobile
- Adding Behavior in our Apps
- Inheritance and Polymorphism
- Introduction to C#
- Object-Oriented Programming
- Using Async and Await
- Writing Multithreaded Mobile Applications
- Introduction to Thread Safety and Synchronization
- Debugging and Exceptions
- Branching and Looping
Cross-Platform App Development
- Best practices for developing mobile applications with Xamarin
- Introduction to Portable Class Libraries
- Differences and approaches to sharing source code files (File Linking vs. SAPs vs. PCLs)
- Techniques used to switch to the UI thread (platform-specific and cross-platform)
- Basic knowledge of Xamarin.Social component (what it supports)
- Basic knowledge of the Xamarin.Mobile component (what it supports)
- Differences between common design patterns used in mobile development (MVVM, IoC/DI, Singleton, etc.) [covered all throughout Xamarin University classes and labs]
- Using the Nuget and Xamarin Component Store
- Basic knowledge of .NET libraries you can use in Xamarin.iOS and Xamarin.Android
- Using the async / await keywords
- Diagnosing Memory Issues
Navigation
- Tabbed Applications in iOS
- Fragments in Android
- Navigation patterns used in Android
- Navigation patterns used in iOS
- How to add items to the Android Options menu
Data in Mobile
- Working with the File System
- Data in Mobile
- Advantages annd restrictions to SQLite
- ORM libraries used in the mobile world (what was covered in XAM160)
- How to abstract paths in Xamarin.Android and Xamarin.iOS
- Isolated storage on Xamarin.Android, Xamarin.iOS and Windows Phone
Xamarin Web Services
- Web Services in Xamarin
- Common architecture and data formats used in Web Services
- Approaches you can use to access a web service from a Xamarin application.
- Available bindings in WCF/SOAP for Xamarin
Xamarin.Forms
- Introduction to Xamarin.Forms
- Xamarin.Forms Control Gallery
- Xamarin.Forms core types - Page types, Layout containers, etc.
- What is XAML?
- Basic binding features
- Customizing the ListView in Xamarin.Forms
- Model-View-ViewModel in Xamarin.Forms
- Resources and Styles in Xamarin.Forms
- XAML in Xamarin.Forms
- Data Binding in Xamarin.Forms
- Using ListView in Xamarin.Forms
Enterprise Services
- Securing Local Data
- Using the Xamarin Salesforce Component
- Accessing OAuth 2 Web Services with Xamarin.Auth
- Data Caching + Synchronization
Android App Development in Xamarin
- Android Getting Started
- Working with ListViews
- Maps and Locations
- Android application core types - Activity, Intent, Adapter, ListView, Context, Bundle, etc.
- Project types included with Xamarin and Visual Studio for Xamarin.Android
- Setting an id on an Android view
- How to launch an Activity
- Resources and Assets in Android
- Layouts in Android
- Android Mainfest settings
- Android Support libraries (what do they do, what is supported, etc.)
- Working with Emulators in Android
- What native types can be used in Xamarin.Android
- How Xamarin.Android executes your code.
- Working with Locations in Android
- Built-in adapter types in Android
iOS App Development in Xamarin
- iOS Getting Started
- Introduction to Storyboards
- Tables in iOS
- Maps and Locations
- Views in iOS
- Working with Images
- iOS applicationc ore types - AppDelegate, UIWindow, UIView, Storyboards, UIViewControllers, etc.
- Launch images in iOS
- Project types included with Xamarin and Visual Studio for Xamarin.iOS
- XIBs vs. Storyboards
- Universal apps (_not_ Unified API)
- How Xamarin.iOS executes your code.
- Working with MKMapView, setting pins, setting current location, finding points-of-interest etc.
- Approaches to providing data and customizing a UITableView (Delegate, Source, WeakDelegate)
- Gesture recognizers in iOS (from Touch in iOS)
- Attributes used in Xamarin.iOS ([Register], [Outlet], [Export] etc.)
- What is in the Info.plist
- Handling images for normal vs. retina displays.
- Positioning UIViews in code (Frame vs. Bounds vs. Center)
- Restrictions of the iOS Simulator
- Folders in the app (Documents vs. Library)
- Autosizing ("Springs and Struts") in the designer
- Unsupported .NET features in Xamarin.iOS due to no JIT.
- Loading images in iOS (UIImage.FromXXX)
- Creating a provisioning profile
- Tools used to profile a Xamarin.iOS Application
Testing
- Deploying to Test Cloud
- Working with Xamarin.UITest
- Intro to Testing
Publishing an application
- Android Deployment & Publishing
- iOS Deployment & Publishing
- What are the basic steps for deploying an application to Google Play & iOS AppStore.
- Application packaging for each platform (what is contained in the app, what is the extension, etc.)
Project in Xamarin App development
Project - Create a complete application using Xamarin
Work on all your Xamarin skills to build an app with the help of instructor.
View Complete Course outline