14 Days To Building An Enterprise Quality Xamarin Forms App

 The goal of this blog series is to build the basics of a quality enterprise level mobile app using Xamarin Forms. If you are new to Xamarin Forms, please have a quick look at an Overview of Xamarin Forms and try to build some sample apps first. This series is for developers who have some knowledge of Xamarin or Xamarin Forms and want to learn how to architect larger solutions.
All of the approaches here I have used in my sample application on Xarch-Starter available on GitHub and this series may reference it from time to time to provide working examples. This series is a higher level overview and won’t be too technical.
Day 1 – Silos and Low Dependencies
Keeping the code and data flows as independent as possible within the mobile app.
Day 2 – Navigation Service
Use a centralized navigation service to provide the ability to control page flow.
Day 3 – Page Building and Cleanup
Constructing a page and building a page should be kept to a central service.
Day 4 – The ViewModel
A ViewModel is the orchestrator of navigation and communicator of data between the model and view.
Day 5 – Separate Navigation Stacks
Complex page workflows can become a burden unless you separate the workflows into different stacks.
Day 6 – Models and Service Layer
Models do the work, the service layer lets you share between the models and communicate with the data layer.
Day 7 – Messenger Service
In order to keep everything siloed you need a way to communicate and Messenger is just that way but it comes with its own issues to overcome.
Day 8 – Repository Layer
Connect to the API to retrieve and send data.
Day 9 – Security and Authentication
Providing secure authentication for enterprise.
Day 10 – Local Storage
SQLite, Local Storage, External Storage, security and more.
Day 11 – Styling UI/UX
Learn how to define styles in global and page level resources and account for platform level differences and basic UI/UX guidelines for Forms.
Day 12 – Performance And Reliability
Account for low end and unreliable services, which are common in widespread mobile apps to consumers or BYOD in enterprise.
Day 13 – Debugging and Error Tracking
You need accurate, timely bug reports with a lot of useful information to debug some issues on mobile devices.
Day 14 – Test Cloud and Unit Testing
Testing the UI and unit testing the code is essential in all enterprise level apps. With the architecture setup in this project this step is rather easy.
Bonus – API MicroService and Cross Continent Scalability
High scalability, load balancing and multiple data centers are all considerations for high throughput API’s.

Want to Learn More?

I created a Video Course, providing more information, and based on my updated experience, of over 9,000hrs of Xamarin.Forms development.
Check out my Application Architecture Video Course.


Posted

in

by

Tags: