¿Cuál es la mejor ruta de aprendizaje para el desarrollo de c # mobile (Android / iOS)?

Bueno, si desea desarrollar aplicaciones móviles con C #, no utilizará el entorno nativo. Las aplicaciones de iOS ejecutan de forma nativa Objective C (obsoleto) y ahora Swift. Android ejecuta Java.

Unity es un motor de juego en el que se programa con C #, pero solo tiene sentido si necesita 3D en tiempo real o está haciendo un juego específicamente. También está Xamarin.

Editar: Realmente no sé nada sobre Xamarain. Mi respuesta anterior sobre menos soporte es simplemente un comentario sobre experiencias generales relacionadas con un entorno de código abierto (Mono) frente a los kits de herramientas de primera parte. Todo está más o menos garantizado para funcionar en Android e iOS nativos, mientras que Xamarin podría tener advertencias sorprendentes.

Recomiendo que vaya con Android y comience a aprender Java. Es lo suficientemente similar a C # como para poder moverse con facilidad, siempre y cuando no se preocupe demasiado por nombrar convenciones y cosas que funcionen de la manera en que está acostumbrado. Y se sentirá frustrado de que no haya una traducción individual para el concepto de delegados. Lo siento.

Contrariamente a la otra respuesta, echa un vistazo a Xamarin. Le permitirá ejecutar c # de forma nativa en ambas plataformas.

Actualmente hay dos buenas maneras de lograr una reutilización de código cercana al 100% entre los dos:

– Formas Xamarin (echa un vistazo a xamarin.com)
– MvvmCross (google “N + 1 días de MvvmCross” para una serie de videos tutoriales)