Xamarin Software
Probablemente el mejor framework multiplataforma
Para decir por adelantado: Tengo experiencia con las variantes nativas de Xamarin y .Forms, utilizando Visual Studio como IDE de elección. El desarrollo es sencillo y hay mucho material de aprendizaje disponible para permitir que incluso los desarrolladores de nivel medio de .Net sean productivos en cuestión de días. Desde el punto de vista del propietario del producto, esta es la herramienta a la que hay que recurrir cuando hay que dirigirse a múltiples plataformas. Usted obtiene la ventaja de ser capaz de apuntar a las características específicas de la plataforma del dispositivo & sin los dolores de tener que utilizar contenedores web como Cordova o marcos Ionic) Para el desarrollador estándar, el mayor dolor es la experiencia de depuración. Esta suele ser lenta (por ejemplo, carece de la función de «despliegue rápido» de Android nativo) y debido a las optimizaciones del compilador, Intelisense apenas funcionará (no se obtienen listados de las propiedades disponibles & métodos, mientras que algunos valores de las propiedades no serán accesibles en absoluto) – aunque esto puede ser mitigado mediante el uso de una buena herramienta de registro. Además, el (relativamente) nuevo Xamarin Forms obligará al desarrollador a utilizar una implementación unificada, lo que hará que el producto global sea aún más fácil de mantener (aunque esto puede tener limitaciones al convertir aplicaciones nativas existentes). En definitiva, se trata de un producto maduro que siempre debe tenerse en cuenta a la hora de orientar el software multiplataforma.
Pros
– En primer lugar, es la portabilidad lo que está impulsando el mercado. Al ser capaz de escribir una sola implementación que se dirige a múltiples plataformas es extremadamente rentable – Al estar respaldado por .Net (extremadamente común entre la comunidad de desarrollo de software) es mucho más fácil mantener una solución de Xamarin (en lugar de tener que encontrar desarrolladores de plataformas nativas) – El soporte de hardware está realmente en un punto alto – incluso los productores de hardware (por ejemplo: Motorola) están sacando SDKs de Xamarin.
Cons
– Tal vez la única desventaja real es que siempre hay un retraso antes de que se actualice para soportar la última actualización de la plataforma – La depuración puede llegar a ser tediosa y he visto esto especialmente en las implementaciones nativas debido a la forma menos que óptima de Xamarin de informar de un problema (es decir: usted puede terminar en situaciones en las que un mensaje de error relacionado con un tiempo de ejecución de Android fue causado en realidad por algún pequeño problema de diseño donde un elemento necesario no está presente)