Desarrollador de Android o desarrollador de iOS, ¿quién tendrá más alcance?

¡Hola, excelente pregunta para levantarse!

Honestamente, años de investigación de área han demostrado que los desarrolladores de Android tienden a tener un alcance mayor la mayoría de las veces. Java es el lenguaje para el desarrollo de aplicaciones de Android; requiere una gran cantidad de código para escribir, mientras que el idioma en el que se publican las aplicaciones de iOS es Swift; apareció por primera vez en 2014, este es el más nuevo de todos los métodos para la creación de aplicaciones para iPhone. Como siempre sucede con la tecnología, cuanto más nuevo es el dispositivo / sistema operativo / software, más rápido funciona; lo mismo con el mundo de las aplicaciones: en Swift los desarrolladores necesitan escribir menos código, y es probable que las aplicaciones aparezcan más rápido que cuando se trata de codificar en Java. Sin embargo, con el lenguaje de lanzamiento de Kotlin para Android, la situación podría cambiar en un futuro cercano, ya que entre los beneficios de Kotlin se encuentran el avance técnico, la modernidad y un mejor rendimiento. Además de esto, Google está considerando que Kotlin se convierta en un nuevo idioma como herramienta principal para Android.

Lea más sobre el alcance del trabajo, las estimaciones y la monetización en el contexto de las plataformas iOS vs Android en nuestro artículo 6 Diferencias entre el desarrollo de aplicaciones iOS y Android: Mitos y realidad – Mind Studios

Los teléfonos inteligentes y sus aplicaciones son la nueva forma del mundo, y los desarrolladores se sienten atraídos por su creciente popularidad. Pero con dos plataformas principales: iOS recientemente actualizado y renombrado de Apple y Android de Google, compitiendo entre sí, ¿cómo elige un desarrollador entre ellas?

De hecho, ¿cómo les iría a los desarrolladores interesados ​​en la máxima exposición de sus aplicaciones al apuntar a cualquiera de las plataformas, o a ambas? ¿Qué obstáculos existen y cómo los supera un desarrollador? Echaré un vistazo a estas preguntas y transmitiré consejos de desarrolladores experimentados en ambas plataformas.

Lenguajes de programación

Para los desarrolladores que tienen una aplicación en mente y visualizan su código ejecutándose en múltiples plataformas móviles, las cosas son difíciles en el mundo de hoy.

Las aplicaciones de Android están escritas en el lenguaje de programación Java. Muchos desarrolladores han hecho carreras en empresas al volverse muy competentes en Java, por lo que desarrollar para la plataforma Android es una opción natural para esas personas.

Por otro lado, las aplicaciones que se ejecutan de forma nativa en el sistema operativo iPhone están escritas en el Objective-C de Apple, un dialecto del lenguaje C más común que tiene elementos de Smalltalk. (Técnicamente hablando, Objective-C es un lenguaje pequeño y estricto de superconjunto sobre C, por lo que cualquier programa C compilará con un compilador Objective-C, y un desarrollador puede incluir código C dentro de una clase Objective-C). Desarrolladores que tienen Pasaron sus carreras trabajando con C y C ++, probablemente no encontrará que Objective-C sea un lenguaje difícil de aprender, aunque puede haber obstáculos en el camino.

“No hay una forma obvia de escribir un conjunto de códigos que apunte a ambas plataformas”, dice Matthew Baxter-Reynolds, director de AMX Software Ltd., una firma de desarrollo de software en Inglaterra, y autor del próximo libro Desarrollo multimobile: creación de aplicaciones para Cualquier teléfono inteligente “No puede ejecutar Java en iPhone y tampoco puede ejecutar Objective-C en Android”.

Escribir para múltiples plataformas

Esa fue la historia por un tiempo: tenía que desarrollar sus aplicaciones en el idioma nativo para cada dispositivo. Sin embargo, durante el último año, han surgido nuevos kits de herramientas y plataformas de desarrollo en el mercado para que los programadores puedan crear aplicaciones para iPhone sin tener que estudiar Objective-C.

Los kits de herramientas como Rhodes de Rhomobile, PhoneGap de Nitobi, Titanium de Appcelerator y Corona de Ansca hacen que sea relativamente sencillo crear aplicaciones que se ejecutarán en alguna combinación de las plataformas iPhone, BlackBerry, Windows Mobile, Symbian y Android.

Sin embargo, estos emuladores y capas de tiempo de ejecución son nuevos y no tienen todas las funciones. Si bien las aplicaciones simples que acceden a la Web y devuelven información al teléfono son apropiadas para este tipo de marcos, las aplicaciones móviles que dependen de cálculos intensos y acceso pesado a la base de datos, que incluye algunas aplicaciones de línea de negocio personalizadas, no son buenos candidatos, porque ejecutar un marco de compatibilidad exige una penalización por sobrecarga en un procesador móvil de potencia limitada que la mayoría de los usuarios consideran inaceptable.

Además, actualmente no hay buenas soluciones para proporcionar soporte multiplataforma para una aplicación gráficamente intensiva, como un juego o un editor de video.

En otras palabras, todavía no hay nada que cambie el hecho de que está trabajando con dos plataformas diferentes y dos idiomas nativos diferentes. Por ahora, la solución es reescribir la aplicación en el idioma nativo de la plataforma de destino deseada.

Sistemas cerrados vs. sistemas abiertos

Algunos desarrolladores prefieren Android porque proporciona una plataforma de desarrollo abierta, en la que se pueden implementar aplicaciones ricas con conjuntos de funciones que pueden cambiar el juego. Los desarrolladores pueden aprovechar el hardware del dispositivo Android, crear aplicaciones que reconocen la ubicación accediendo al GPS y otra información sensorial en el dispositivo, configurar alarmas para recordar a los usuarios los eventos, incluir notificaciones y otra información en la barra de estado del dispositivo, y más.

En contraste, los iPhones tienen dificultades para mostrar múltiples notificaciones, ya que las aplicaciones están restringidas a mensajes emergentes que se muestran solo uno a la vez. Además, los desarrolladores de Android, al menos en los Estados Unidos, pueden aprovechar las diversas funciones del operador en todo el espectro de dispositivos Android, mientras que los dispositivos iPhone están limitados a las funciones de red que permite AT&T.

Con la funcionalidad del kit de desarrollo de software de Android (SDK), un desarrollador puede crear aplicaciones que usan la pantalla táctil o el teclado del dispositivo. Este es un punto importante, ya que los desarrolladores de Android tienen que acomodar un conjunto más grande de dispositivos, todos con diferentes configuraciones de hardware.

En un artículo reciente de TechRepublic, Justin James informó que Jason Chen, un defensor de desarrolladores de Android en Google, dijo que los dos obstáculos más grandes que deben superar los desarrolladores de Android por primera vez son comprender y manejar la multitarea en la plataforma Android y lidiar con gracia con las interrupciones de la aplicación, como recibir un mensaje de texto SMS entrante o una llamada telefónica.

Por otro lado, a los desarrolladores les va bastante bien al escribir aplicaciones para el iPhone, al menos al principio. Dado que el sistema operativo del iPhone es un sistema cerrado, creado específicamente por Apple para sus propios dispositivos, los desarrolladores tienen un espectro conocido de dispositivos para apuntar, con un alcance bien definido de capacidades y limitaciones.

Algunos desarrolladores informan que este modelo de sistema cerrado mejora la usabilidad, un rasgo por el cual los productos de Apple han sido tradicionalmente elogiados. Con una integración tan estrecha del teléfono, el sistema operativo y las aplicaciones de terceros, las expectativas definidas de los usuarios se cumplen con un mínimo de alboroto para obtener una aplicación en el teléfono, qué hace cuando está en el teléfono y qué características tendrá esa aplicación apoyo.

Eso es algo bueno desde la perspectiva del tablero de dibujo, pero en algunos casos, por ejemplo, donde su software podría funcionar mejor, o al menos de manera diferente, con un tipo diferente de dispositivo, limita la flexibilidad que los desarrolladores tienen para crear aplicaciones.

Recursos de aprendizaje y herramientas de prueba.

Ponerse al día es una parte importante del proceso de desarrollo. Apple ofrece información para desarrolladores de aplicaciones de iPhone en muchas formas, incluyendo multimedia. “Los conceptos importantes se explican en videos, lo que facilita la comprensión de los conceptos”, dice David Green, desarrollador de software de MAKE Technologies Inc. en Vancouver, Columbia Británica. “Sin embargo, descubrí que los videos progresaban lentamente y estaba viendo lo que parecían horas para encontrar información que debería haber tomado minutos”.

Por el contrario, el soporte de Android de aplicaciones de código abierto hace que sea fácil aprender de las aplicaciones de muestra y otros programas. “También descargué muchos proyectos de Android de código abierto para obtener ideas sobre arquitectura y uso de API. Esta es un área donde Android tiene la ventaja, [ya que] con la política anterior de NDA de Apple no hay mucho en términos de código abierto para iPhone “, dice Green.

Por supuesto, el entorno de desarrollo y las herramientas de prueba constituyen una parte significativa de la experiencia general para los creadores de aplicaciones. Green dice que aquí, Android es el claro ganador. “El desarrollo de Android aprovecha las excelentes herramientas JDT, que son prácticamente estándar y estándar en cada instalación de Eclipse”, dice. “He usado estas herramientas durante muchos años y son excelentes. Todo lo que Java está indexado, el IDE tiene un modelo rico del código fuente, y la refactorización es tan perfecta que ha cambiado la forma en que trabajo”.

Por otro lado, el entorno de desarrollo integrado (IDE) Xcode de Apple no está a la altura, según Green. “Xcode es tan sorprendentemente malo que casi no sé por dónde empezar”, dice.

Green sugiere que, como mínimo, Xcode debería mejorarse para incluir un sistema de gestión de Windows / editor decente para facilitar su uso, documentación API integrada para ahorrar tiempo y funcionalidad de asistencia de contenido que representa un conjunto de estilos de codificación más amplio que el que está disponible ahora. “La asistencia de contenido proporcionada por XCode a menudo es incorrecta y casi siempre sugiere un pequeño subconjunto de lo que está realmente disponible”, dice Green.

¿No se permite Java o Flash?

Últimamente, se ha hecho mucho de la disputa pública de Apple con Adobe sobre la estabilidad y la máxima utilidad de la tecnología Flash Web de este último. Apple, en el pasado, arrojó de manera similar el lenguaje Java en una luz negativa. En un dictamen que probablemente provenga directamente de la parte superior (Steve Jobs), la compañía decretó que el iPhone y sus diversas tecnologías hermanas y hermanas no admitirán Flash o Java. Durante el reciente lanzamiento de iOS 4.0, se le preguntó a Jobs si era probable que esta posición cambiara. “No”, dijo.

En un entorno donde solo unos pocos toques o clics le permiten descargar, instalar y ejecutar una aplicación, todo sin interrupciones y de forma inalámbrica, se puede argumentar que se deben emplear ciertas protecciones razonables para proteger a los usuarios de las aplicaciones mal intencionadas. Aún así, eso limita la flexibilidad que los desarrolladores con conocimientos en esas plataformas de medios enriquecidos tienen para crear aplicaciones para el iPhone, particularmente cuando el audio, el video, las animaciones, etc. son componentes centrales de una aplicación.

“En este momento, hay algunos signos de interrogación sobre las licencias de SDK de Apple con respecto a si Apple permitirá, de forma continua, aplicaciones en la App Store que se hayan escrito utilizando capas intermedias o herramientas de conversión”, dice Baxter-Reynolds.

“El mensaje que [Apple está] presentando en este momento es que las aplicaciones de iPhone deben escribirse de forma nativa para ese dispositivo y, por lo tanto, los desarrolladores pueden tener dificultades para mantener y desarrollar un único conjunto de código que incluya iPhone en su conjunto de plataformas de destino”. él dice. “Esto es una vergüenza particular porque será por razones legales y no por razones técnicas”.

Aprobación y pago

Las limitaciones en la plataforma de iPhone no han frenado la popularidad del teléfono en sí, que continúa vendiéndose en grandes cantidades, o el éxito de la tienda de aplicaciones iTunes, que tiene más de 225,000 aplicaciones para iPhone, iPod y iPad en venta.

Apple también ofrece una API abierta para desarrolladores que no desean enviar sus aplicaciones para su revisión y aprobación en la App Store. Estos desarrolladores pueden alojar la aplicación empaquetada en su propio sitio e indicar a los usuarios que visiten esa ubicación para descargar e instalar el código. Pero claramente, al implementar aplicaciones de iPhone de esta manera, un desarrollador pierde miles y miles de globos oculares que navegan exclusivamente en la App Store y se separan de su dinero en ese lugar.

Los desarrolladores que siguen la ruta de la App Store pueden suscribirse a la ruta estándar del Programa de Desarrolladores de iPhone, que les permite recibir el 70% de los ingresos por ventas sin pagar ningún costo de distribución de la aplicación. Sin embargo, para usar el iPhone SDK, los desarrolladores deben pagar una tarifa anual de $ 99, después de lo cual reciben la firma del certificado digital necesaria para vender la aplicación en la App Store.

El proceso de aprobación, que en 2009 fue a menudo de semanas, se ha reducido a solo unos días, aunque las aplicaciones específicas de iPad pueden enfrentar retrasos más largos en este momento.

Por el contrario, Android Market no tiene restricciones sobre el idioma en que se escriben las aplicaciones, las funciones que realizan o cualquier otra propiedad de la aplicación. Los desarrolladores que se registran en el Android Market pagan una tarifa única de $ 25 para registrarse, y el 70% de los ingresos posteriores van al desarrollador. Los desarrolladores también son libres de publicar las mismas aplicaciones en otros mercados de aplicaciones sin enfrentar ninguna restricción.

Mirando hacia el futuro

En última instancia, los argumentos a favor y en contra de los enfoques adoptados por Apple y Google son irrelevantes desde la perspectiva de los usuarios finales, los eventuales consumidores de las aplicaciones que crean los desarrolladores. Lo que importa para todos, excepto para la minoría más pequeña de clientes, es la experiencia general: el matrimonio de forma y función.

Además, el avance de la tecnología generalmente deja obsoletos los argumentos sobre kits de herramientas y plataformas. Como señala Baxter-Reynolds, el próximo estándar HTML 5 resolverá gran parte del argumento de Adobe-Apple para muchos desarrolladores.

“No todo es pesimismo”, dice. “Tanto Android como el iPhone utilizan el fabuloso marco de navegación WebKit, que se compromete a admitir completamente HTML 5 y que eventualmente se convertirá en una plataforma de aplicaciones multiplataforma por derecho propio en los próximos años”. Desarrollar en HTML 5, además, significará una amplia documentación para aprender sobre el lenguaje y la libertad de desarrollar código HTML en cualquier entorno que un desarrollador desee.

Para el desarrollo de iOS, puede usar y aprender el lenguaje ‘Swift’ que Apple desarrolló recientemente. Puede desarrollar aplicaciones en Objective – C también. Swift es un lenguaje completamente nuevo y no muchas personas están familiarizadas con él.

La herramienta utilizada para el desarrollo de aplicaciones se llama ‘XCode’, pero ten cuidado, ¡solo puedes publicar aplicaciones iOS desde XCode usando solo una Mac!

Para el desarrollo de aplicaciones de Android: si es un principiante, primero debe saber el lenguaje de programación JAVA. Después de eso, te recomiendo que uses “Android Studio IDE” como tu herramienta de desarrollo de aplicaciones de Android. (Cuidado, Eclipse está en desuso). Como Android es un sistema operativo de código abierto y está disponible en casi todos los dispositivos disponibles en el planeta y también teniendo en cuenta el valor de mercado de cada dispositivo Android), ¡hacer que las aplicaciones para Android puedan ser la decisión correcta para usted!

A partir de ahora, el desarrollador de Android tiene mucho más alcance, ya que Android ha cubierto el 70% del mercado y se espera que continúe con el mismo ritmo hasta 2020 al menos. Pero, si aparece un nuevo sistema operativo en el mercado que reemplaza a Android, entonces tendrá que cambiar de nuevo, mientras que iOS, sin importar lo que ocurra o se vaya, todavía estará allí. Entonces, a largo plazo, ios es seguro.

Hablando de desarrollo, con Swift 2, el desarrollo de iOS se ha vuelto muy fácil. Una acción que requiere 10 líneas de código en java (android) se puede lograr con 2-4 líneas en swift 2 (ios).
Para crear una cuenta de desarrollador para ios, debe pagar $ 99 por año, y para Android, es un pago único de $ 25 solamente. Para iOS, debe tener mac, la aplicación de Android se puede desarrollar en cualquier, Windows, Mac, Linux.

El desarrollador de iOS necesita seguir todos los estándares de la aplicación ios, o de lo contrario bloquearán la aplicación para que se lance en la tienda de aplicaciones. En Android, es relativamente más fácil poner tu aplicación en Play Store. Además, su aplicación está disponible para su descarga a las pocas horas de su lanzamiento en Android, mientras que la aplicación ios tarda hasta una semana y se inicia en un proceso muy largo.
Incluso para actualizaciones, puede actualizar fácilmente su aplicación en Play Store varias veces al día. La actualización en ios también lleva mucho tiempo y, por lo tanto, la corrección de errores lleva mucho tiempo.

La aplicación IOS genera más ingresos, pero esto no siempre es cierto ahora. Entonces, sugeriría Android.
Espero que ayude 🙂

La aplicación de Android se basa en la plataforma Java. La aplicación de Android está escrita en lenguaje Java. Dos plataformas se han utilizado principalmente en la actualidad, Apple lo ha renombrado como iOS y Android de Google, compitiendo entre sí.

iOS se ha desarrollado en lenguaje C y C ++. Tiene lenguaje de programación puro y tiene un lenguaje de programación típico. Por lo tanto, el usuario tiene pleno conocimiento del lenguaje básico C y C ++. Android tiene más que el usuario iOS porque es fácil de usar y está fácilmente disponible en la plataforma gratuita.

El solo hecho de crear una aplicación para su negocio no garantiza mayores ingresos. Sin embargo, le ayudará a comprender el comportamiento del consumidor y mejorar sus ofertas de acuerdo con la naturaleza de su comportamiento de compra. Apphonchoz crea aplicaciones móviles, sitios web receptivos, Bots y cualquier producto digital que viva en una pantalla para las organizaciones de conducción del mundo. Nuestro equipo de desarrollo de aplicaciones móviles y diseño de aplicaciones se desafía a sí mismos a construir experiencias excepcionales al unir las técnicas y diseños más recientes con nuestro proceso de pensamiento y desarrollo de nivel empresarial.

Creo que tanto Android como iOS tienen un futuro igualmente bueno.

Es impresionante en términos de nuevas características, mejoras de diseño, seguridad, corrección de errores, etc.

Hoy en día, casi todas las empresas tienen tanto desarrollo de aplicaciones iOS como desarrollo de aplicaciones Android para sus negocios, como Facebook, Twitter, WhatsApp, Amazon, Domino’s pizza, British Airways, Skype, etc.

Por lo tanto, cada empresa seguirá contratando a algunos desarrolladores de aplicaciones de Android y algunos desarrolladores de aplicaciones de iOS.

Por lo tanto, los desarrolladores de aplicaciones iOS y Android tienen un futuro igualmente bueno.

Todo depende de su fluidez con los códigos y la formación de conceptos.

El dinero no es la restricción en términos de profesionales calificados. Un desarrollador de Android puede ganar mucho mejor que un desarrollador de iOS si las habilidades y la formación están al nivel de la perfección.

El juego de roles más importante es Android según los datos del mercado en India e iOS en EE. UU. Por lo tanto, debe tener el marco correspondiente según su ubicación de trabajo también. Dado que ambos tienen casi el mismo lenguaje Java.

Gracias por A2A

Estoy de acuerdo con otros ans aquí
hacer su propia cartera de trabajo es más fácil en Android Market (costo y reglas para Play Store) que iPhone.
pero cuando se trata de carrera, debe seguir su interés porque, como ingeniero de software, también debe estar listo para trabajar con otro marco / lenguaje.

cualquiera que sea la tecnología que elija, tiene que lidiar con la lógica y los códigos de codificación, así que no se preocupe, ambas opciones están en pleno auge “apne dil ki suno yar!”.

La mejor de las suertes

Si quieres aprender solo para el alcance, entonces seriamente decirle a nadie que está seguro de eso.
Y si quieres aprenderlo para aprender a hacerlo realmente, entonces ¿por qué limitar hacer ambas …
Comenzar con Android será fácil y luego continuar con iOS no sería un gran problema para usted.
Aunque los patrones de codificación en ambos son totalmente diferentes, una cosa que puedo prometerte es que aprender ambos te hará sentir mejor …

Es bueno si comienzas con cualquiera de ellos, pero recuerda que necesitas una Mac para el desarrollo de iOS, además de que la aplicación de lanzamiento en iOS cuesta $ 99 al año. ¡Tantas restricciones allí! ¡Tal vez comience con Android y finalmente busque iOS una vez que se desarrolle bien con el desarrollo de aplicaciones!

El alcance está prácticamente en todas partes, amigo mío, si tienes lo que se necesita para destacar entre la multitud.

Ambos sistemas operativos son diferentes en muchos aspectos. Depende de lo que quieras hacer con ellos y de cuál es tu conjunto de habilidades que te ayudará a decidir.