1. SIEMPRE se recomienda que conozca Java / Obj-C / Swift si desea crear aplicaciones nativas. Además, los lenguajes en sí mismos no son realmente tan difíciles de aprender, sino los frameworks / API subyacentes para ambos y la experiencia de usarlos.
2. C # / Xamarin simplemente le permitirá crear cosas con un idioma utilizando algunas API y controles nativos y por qué es probablemente una de las mejores opciones si desea crear aplicaciones para Android / iOS utilizando un lenguaje / marco unificado. Es una de las raras soluciones de desarrollo móvil que realmente utiliza las API y controles nativos. Casi todos los demás framework / lenguaje construyen sus propios controles y realmente no utilizan API nativas y eso nunca es bueno.
Aquí hay algo a tener en cuenta. Si bien Xamarin / C # le permitirá construir cosas rápidamente, con controles nativos estándar, aún le dará los más utilizados. Si quieres hacer algo genial, algunas cosas personalizadas de la interfaz de usuario, estás buscando problemas incluso con Xamarin. Sin embargo, para el 90% de las cosas, las cosas de Xamarin cubren la mayoría de los controles nativos estándar, pero en este día de edad con el desarrollo de aplicaciones móviles si su aplicación no tiene una interfaz de usuario atractiva, además de la funcionalidad, tendrá más dificultades para destacar .
- ¿Es posible alterar mediante programación las imágenes tomadas por un iPhone?
- ¿Puedo usar MeteorJS para crear una aplicación web y poder convertirla en aplicaciones de Android e iOS?
- ¿Cuál es una forma de generar un icon.png para iOS en PhoneGap, Cordova?
- ¿Cómo calcula la rotación mensual de una aplicación gratuita para iPhone?
- Cómo crear una aplicación móvil como Venmo o una empresa similar
Es por eso que dije primero, sabiendo que Java / Obj-C / Swift realmente será recomendable para ti. Aprender a los dos y usar API y controles 100% nativos y la capacidad de crear cosas personalizadas es un gran beneficio.
Después de eso, puede usar C # / Xamarin si desea hacer su vida más fácil y simplemente construir con un lenguaje / marco en lugar de hacer las cosas por separado, pero el conocimiento y la experiencia que obtendrá de los idiomas nativos para cada plataforma aún le permitirán el máximo flexibilidad y tener las actualizaciones absolutas de los SDK y otras cosas que agregan Google / Apple.