¿Qué tan difícil es escribir una aplicación para iPhone o Android?

En comparación con otros desarrollos como el software para PC, Mac o computadoras portátiles, el desarrollo móvil es fácil, pero a medida que avanza en el desarrollo avanzado y de grandes aplicaciones, debe tener más cuidado y se vuelve crítico cuidar los pocos recursos en los dispositivos móviles.

Es fácil en comparación con el desarrollo de software para PC porque tiene un camino directo en el aprendizaje. Los sistemas dentro del dispositivo, como sus componentes y los componentes de los sistemas operativos móviles, se desarrollan más fácilmente y los SDK proporcionan muchas bibliotecas que lo ayudan en el desarrollo y la interacción con los componentes del dispositivo móvil.

Tiene principalmente un idioma, componentes de un dispositivo móvil y las características de su sistema operativo para aprender y comenzar el desarrollo. Los componentes de dispositivos móviles son interesantes, pero suponen una sobrecarga en comparación con el desarrollo de PC donde, a menos que se desarrolle para hardware, no es necesario entrar en componentes de hardware.

Cuando ingresa al desarrollo avanzado de aplicaciones, necesita cuidar la memoria, el rendimiento de la aplicación, el espacio en disco y, hoy en día, debe desarrollar para demasiados dispositivos que tienen diferentes características y especificaciones, lo que también es un gran desafío.

Las aplicaciones de prueba en dispositivos móviles son a veces aburridas y aburridas, pero creo que no agregan complejidad

No es nada, simplemente haga clic en “Crear nuevo proyecto” en Android Studio, seleccione una de las plantillas y su primera mini aplicación ya está escrita y lista para ejecutarse.

Pero dejando de lado el humor, como ya dijo una de las otras respuestas, Java y Android SDK con la ayuda de muchas bibliotecas diferentes pueden ayudarlo mucho a ser productivo, cumplir con los requisitos funcionales y desarrollar soluciones de trabajo muy rápido.

Pero lo que ha sido el mayor desafío para mí cuando comenzaba, definitivamente es unir todo eso correctamente, en una arquitectura limpia, libre de errores y luego fácilmente mantenible (como ya he dicho en algunas de mis otras respuestas sobre Quora ) Esa es una de las cosas que acaban de llegar con el tiempo, con experiencia, y para la que necesita aprender y experimentar exactamente cómo funcionan Android y algunos de sus detalles específicos, como los ciclos de vida.

Por otro lado (IMPORTANTE TENER EN CUENTA), no todas las API en los SDK de Android son igualmente fáciles y agradables de trabajar. Por lo tanto, depende mucho de qué parte del SDK de Android está trabajando y qué requisitos debe cumplir. Para “imaginar” lo que quiero decir más correctamente, usaré una de las diapositivas de Google I / O 2017:

Esta imagen está un poco fuera de contexto (juego de palabras), pero la usaron para explicar cómo, por ejemplo, las API de RecyclerView son muy buenas y fáciles de trabajar, mientras que las API de Lifecycle son difíciles y complicadas, y ahora lo están resolviendo. con componentes de arquitectura. Personalmente, también agregaría MediaCodec como una de las API “duras”, aunque la mayor parte de su dureza proviene de ser de bajo nivel, no tanto de estar mal escrito.

En resumen, diría que es fácil entrar en Android y comenzar a trabajar (si tiene al menos habilidades de Java medias, por supuesto), pero crear aplicaciones bien diseñadas necesita un poco de experiencia y habilidad, y lo único que haría llamar “duro” es una de esas API malas y antiguas, para las cuales incluso Google dice que son malas, y la mayoría de las cuales se hacen mucho mejor en iOS.

Sé que la pregunta también se refería a las aplicaciones de iOS, pero solo he trabajado con Android, por lo que mi respuesta es solo sobre las aplicaciones de Android difíciles.

Es fácil comenzar

Déjame agregar más información. Esto puede ayudarlo a comprender lo fácil que es fácil.

Puedo compartir mi experiencia Sin experiencia previa en nada sobre desarrollo móvil, me llevó tres días (bueno, en realidad tres noches)

Hoy en día, puedo enseñar “cómo comenzar en aplicaciones de Android en 90 minutos”

Sí en 90 minutos planos.

Por supuesto, eso solo está comenzando y lleva poco más tiempo (alrededor de seis horas) desarrollar una aplicación para controlar las luces del hogar y otras aplicaciones eléctricas como en este video.

¿Que necesitas? pasión, enfoque y una buena guía.

Los mejores deseos.

Depende de los antecedentes de su programador y la complejidad de su proyecto.

Digamos que entre la física cuántica del Dr. Sheldon Cooper y la robótica de Tony Starks es la escala de dificultad 🙂 para la codificación de Apple y Android

Realmente difícil si sigues esperando que alguien te diga que no es difícil.