Si necesita desarrollar una aplicación para múltiples plataformas móviles, rápidamente, con un mínimo esfuerzo (es decir, implementar una vez), use PhoneGap o similar. Estos marcos proporcionan un tipo de entorno de "denominador común más bajo", por lo que pierde acceso, a menudo, a las capacidades de la plataforma nativa.
Por otro lado, si está desarrollando una aplicación solo para iOS, entonces por supuesto, desarrollela en Objective-C como una aplicación nativa.¡Entonces tiene a su disposición el SDK completo y las capacidades de la plataforma! Esta es, por supuesto, la recomendación de Apple como una mejor práctica para desarrollar aplicaciones de iOS.
En mi propia experiencia, tuve una conversación con mi CTO antes de unirme a mi compañía sobre si debemos desarrollar aplicaciones nativas para nuestra plataforma o usar PhoneGap. Acordamos que el desarrollo de aplicaciones nativas era el camino a seguir porque podíamos aprovechar las capacidades específicas de cada plataforma. Más allá de eso, una aplicación nativa proporcionaría una mejor experiencia de usuario en la plataforma, ya que se comportaría más como otras aplicaciones nativas con las que el usuario podría estar familiarizado. Piensa en la última idea. Piensa en todas tus aplicaciones que disfrutas. Como desarrollador, probablemente pueda saber, y rápidamente, cuáles son nativos y cuáles no, simplemente utilizándolos. ¿Cuál crees que proporciona una mejor experiencia de usuario? Algo sobre lo que pensar. :-)
Al final, depende de usted. Dijiste que te gusta la programación de Objective-C. Por lo tanto, ¡adelante y conviértase en nativo! Por otro lado, si tienes aspiraciones multiplataforma, y estás familiarizado con PhoneGap (u otros) o si quieres aprender sobre ellos, ¡adelante! :-)
Esto parece como una discusión más adecuado para http://programmers.stackexchange.com (mi estrecha votación es simplemente para la migración) – Joe