What's the difference between the Xamarin.Forms, Xamarin.iOS, and Xamarin.Android versions?
What's the difference between the Xamarin.Forms, Xamarin.iOS, and Xamarin.Android versions?
Obviously Xamarin.iOS and Xamarin.Android are implementations of Xamarin for these specific platforms and access 100% of the platform API (at least it always tries to be around this). Obviously with some adaptation to conform to the philosophy of C #, but access the direct API. Note that the difference is basically in the UI and specific access to the features, but much of the code can be used. Programming with them is almost like programming with Java or Swift, but it's C #.
Xamarin.Forms is an abstraction that allows you to take advantage of close to 100% of your code, including UI leveraged for both platforms. It is a layer that adopts a strategy that works well on one platform and reasonable and another. It saves hours of development and maintenance, learning different platforms and avoiding code duplication, but it does not have the best UX possible. It allows use with Windows Phone and Desktop (Windows 10) as well.
The Xamarin Platform delivers two alternatives for building mobile applications, Xamarin.iOS (permite desenvolvimento de aplicações para iOS usando controles de interface desenvolvidos com Objective-C/Xcode)
and Xamarin.Android (permite desenvolvimento de aplicações para Android usando controles de interface desenvolvidos com Java)
, where you have direct access to the API's of each platform while Xamarin.Forms focuses on maximizing code sharing ( Portable Libraries ) between these platforms.
Example: The implementation of a button is different between platforms, when I decide to use Xamarin.Forms it unifies the behavior, resolves and presents this button on each platform respecting its characteristics.
Xamarin.iOS and / or Xamarin.android is usually used in scenarios where:
Already Xamarin.Forms is usually used when: