The first thing we must make clear is the difference between ” Classic Xamarin” and Xamarin Forms:
In ” Classic Xamarin ” we share all the logic of the application between the different platforms, with the exception of the user interface, which will be independent for each one of them. That is to say:
- For the development in Android, the graphical part would be implemented with the bindings of the native Android components (XML resources, Activities, Fragments, etc.)
- For iOS development, the graphical part would be implemented with native iOS bindings (storyboards, xib resources, ViewControllers, UIViews, etc.)
- For the development in Windows, the graphical part would be developed with the own APIS of Microsoft.
In ” Xamarin Clásico “, the core of the application is developed in a common way to all platforms, but the graphic part maintains the native components of each one of them.
However, with Xamarin Forms we can share, in addition to the logic of the application, the user interface , thus increasing the reuse of code.
Xamarin Forms , is therefore a set of tools designed to speed up the multiplatform developmentand maximize the amount of code shared between each platform.
That is to say, with Xamarin Forms we get that the code shared between the platforms reaches up to 90% , which allows a considerable saving in time and costs .
When to use Xamarin and when Xamarin Forms:
We will use “Classic Xamarin ” to:
- Apps that require native behavior
- Apps that use many specific APIs
- Apps that require a custom interface
Xamarin Forms is more suitable for:
- Apps that do not require a very complex design
- Code-sharing apps, where interface customization does not matter much
- Apps for data entries
Therefore, ” Classic Xamarin ” is ideal when a very high level of personalization of the user interface is required for each of the platforms, the level of personalization of the app being more important than the amount of shared code.
On the other hand, Xamarin Forms is the best option when applications require less customization in the interface, where the functionality takes precedence over the UI.
For example, to develop business apps in which functionality prevails and it is not necessary to fall in love with the consumer with very complex animations or designs, Xamarin Forms could be your option.
Xamarin Forms: Designing a prototype
In Xamarin Forms, the user interface consists of different elements :
They are container elements that represent a screen of the application:
Container elements of other layouts or views. They are necessary to establish
the position and alignment of the child elements that the application contains.
Also called widgets, they refer to the visual elements of the app (buttons, labels, textboxs, etc.)
Through this link , you can see the description of each of the controls and how they are displayedon each platform.
In addition to these components, which are the main ones in any app that we develop with Xamarin Forms, there are third-party components that we can use to make our app more colorful:
- Grail Kit