I am just getting started with Xamarin (started my evaluation today). I'm trying to wrap my head around the different options for creating a cross-platform solution, particularly with UWP in the mix.
My starting point is that I want to write a UWP app for Windows 10 with the business & data layers divided into UWP assemblies. I would also like to target Android and iOS, of course.
It sounds like UWP support is only available in preview form, and only available in Xamarin.Forms 2.0. From what I've read so far, Xamarin.Forms is the solution that allows you to write your UI once and have it compile down to native packages for iOS and Android.
According to Xamarin, Xamarin.Forms is best for prototyping and/or apps where native performance and UI design isn't a priority. That sounds great for getting something running quickly, but I would like the option down the road of swapping out the Xamarin.Forms front end for native UIs. I would like to keep using the same ViewModel/Model layer written in UWP, but presumably I would want to use:
- native XAML for Windows 10 devices
- Xamarin.Android for the native Android front end
- Xamarin.iOS for the native iOS front end
In other words, I want the option of getting rid of the Xamarin.Forms front end, keeping the same middle layers, and creating some better front ends in an environment that allows me to leverage the strengths of each platform with better performance.
I'm having trouble figuring out if that would be possible now, with UWP support in preview. And if it's not possible now, will it be possible in the future?