¿Cómo empiezo a escribir iPad, iTouch y aplicaciones Android usando C #?

Ok amigos, soy desarrollador de C # WPF .net y he trabajado casi exclusivamente con el desarrollo de interfaz de usuario en un idioma u otro durante los últimos 15 años. Los últimos 7 han estado con C # y tengo que admitir que estoy mimado.

Entonces, la pregunta es: ¿Cómo empiezo y qué herramientas son las mejores para usar? Veo que MonoTouch está ahí fuera, pero parece que ahora se llama Xamarin. ¿Qué pasa con PhoneGap, Titanium, Appcelorator? ¿Hay otros de los que aún no he oído hablar?

Solo quiero entrar en el desarrollo de Android y / o el desarrollo de iPad / iTouch, pero no quiero ir nativo. Me gustaría aprovechar mis habilidades C #, preferiblemente WPF, pero no tengo idea de qué herramientas son compatibles con el desarrollo de Android / iPad / iTouch.

¿Cuáles se integran con Visual Studio?

Cualquiera que tenga REAL EXPERIENCIA con cualquiera de los anteriores, o uno de los que no he oído hablar, por favor entrégueme y dirígeme en la dirección correcta.

Realmente lo aprecio.

Una de las mejores tecnologías es el marco Mono para Android / iOS, específicamente por el hecho de que puede apuntar a 3 plataforms simplemente codificando una. Por supuesto, la interfaz de usuario es independiente, por lo que necesitarás aprender cada plataforma Patrones de layout, etc. Pero aquí

http://xamarin.com/?gclid=CM_agZWFgLYCFUvHtAodeDYADw

El mejor lugar para comenzar

Phonegap funciona al tener una vista web cargando una aplicación html y javascript, por lo tanto, no estarías usando C #, y los resultados generalmente están lejos de una aplicación nativa.

Por el contrario, mono touch comstack tu código C # para que se ejecute de forma nativa en tu plataforma mobile, y como implementan un contenedor alnetworkingedor de las bibliotecas nativas, se supone que eres capaz de escribir aplicaciones tan bien como si fueras nativa. En su caso, creo que sería la mejor manera de hacerlo.

Por cierto, Mono Touch no elimina el requisito de tener un mac para desarrollar aplicaciones iOS.

Si vienes de WPF y estás familiarizado con el patrón MVVM, encontrarás muchos frameworks js que comparten el mismo enfoque ( KnockoutJs es bueno), básicamente esto es lo que usarás si quieres ir con una cruz solución de plataforma como PhoneGap que no es más que una envoltura para una aplicación web, y unos pocos files para acceder a su dispositivo.

Personalmente, me parece que PhoneGap es una buena solución solo si desea acceder a las funciones de su dispositivo en una aplicación simple. Tan pronto como comiences a agregarle páginas, la sensación de falta de capacidad de respuesta te hará preguntarte por qué no fuiste nativa desde el principio.

Yo iría por Xamarin. El Xamarin 2.0 tiene integración de Visual Studio. Puedes escribir código para iOS o Android en Visual Studio 2012 (soy un fan de ReSharper :)).