¿Debo optar por el desarrollo de iOS o el desarrollo web en 2017?

Puedes ir por ambos. Lo que significa que puede elegir cualquiera que tenga. Hoy existe una tendencia a tener casi todos los dispositivos móviles en casa. Por lo tanto, el desarrollo de aplicaciones para iOS, Android y desarrollo web es realmente necesario.

Debo decir que el desarrollo de iOS es más interesante y atractivo. Además, las personas siempre están tratando de hacer su vida más cómoda y fácil en todas las esferas. La gente quiere controlar cada pequeña cosa de su vida. Quieren tener control sobre cámaras de seguridad de la casa, sensores de puertas y ventanas, detectores de humo, soluciones de tareas educativas, tratamientos de salud, etc. Por lo tanto, tener la oportunidad de resolver estos problemas con las aplicaciones les facilita la vida.

Ahora tenemos docenas de aplicaciones tan útiles. Y en realidad una vez les he dado una breve descripción de ellos.

Además, supongo que será interesante que leas información útil sobre una manera fácil y amigable de desarrollar una buena aplicación en 10 pasos.

Paso 1: idea y objetivos

El primer paso para crear una nueva aplicación es la idea de una aplicación móvil. Si ve el objetivo principal de su aplicación, use su imaginación para compilar la idea. Debe tener en cuenta que la aplicación, como cualquier otro proyecto, debe basarse en la resolución de problemas de los usuarios, incluso en fiestas simples, las personas usan Periscope, Instagram y Ustream todo lo que les rodea.

Paso 2: usuarios de la aplicación

Comprender quiénes serán los usuarios es uno de los momentos más importantes para crear la aplicación móvil. Y señalamos dos formas de identificar a su público objetivo:

– quiénes son los usuarios de su aplicación

– cuántos usuarios usarían tu aplicación

Paso 3: análisis e investigación de la competencia

Con el fin de abrirse camino en el mercado de aplicaciones, uno debe aprobarse como un participante importante entre otros competidores. Existen numerosas formas y criterios diferentes para analizar a los competidores, pero los siguientes son esenciales:

– identifica a tus competidores

– hacer una comparación de sus productos y sus ventajas de mercado

Paso 4: UX y wireframing

Una vez definidos los objetivos de la aplicación, el público objetivo y las características específicas, podemos proceder con su realización. Al principio tenemos que definir qué contendrá nuestra aplicación, lo que significa escribir la lista de características deseables, incluido el flujo de cómo se realizará la navegación desde el principio hasta el final. Se llama arquitectura de la información, un esquema que refleja todos los pasos posibles del usuario.

Con la ayuda de la estructura de alambre del producto (preparación de un esqueleto de su futura aplicación) es posible ver visualmente cómo se verá su aplicación. Es esencial incluir todo lo necesario en los wireframes: cada botón, ventana emergente y campo de texto.

Paso 5: diseño visual

Después de terminar el trabajo con wireframes y todo lo relacionado con él, podemos continuar con el diseño real. Puede hacer varias versiones de diseño entre las que puede elegir una que le guste y que considere apropiada. Por lo general, el diseñador produce 3 pantallas, es decir, 3 versiones de la aplicación buscan que usted elija llamado concepto visual.

Al diseñar una aplicación, se requiere preparar un diseño separado para cada plataforma involucrada, porque cada una de ellas exige un conjunto específico de elementos basados ​​en el diseño de material proporcionado por los sistemas.

Paso 6: desarrollo previo

Antes de comenzar el desarrollo real, uno debe definir varios problemas organizacionales importantes:

– metodología de desarrollo

– iteraciones de desarrollo

– criterios de inicio / fin

– creación del plan de desarrollo, etc.

Paso 7: desarrollo

Aquí se deben considerar los roles de dos personas: ingeniero de PM y QA.

Bajo la estricta guía del gerente de proyecto, los desarrolladores deben completar las tareas y ejecutar el plan. Los deberes de PM también incluyen la aclaración de todos los malentendidos que generalmente ocurren durante el desarrollo y la búsqueda de soluciones.

Los probadores de software desempeñan un papel considerable en mejorar la aplicación durante todo el proceso de desarrollo que realiza pruebas Alpha todo el tiempo.

Paso 8: prueba beta

Para asegurarse de que su aplicación funciona realmente bien, no hay inconvenientes y la gente la usará con placer, no puede perderse las Pruebas Beta. Esto puede asegurar que la aplicación esté disponible para un lanzamiento completo, ya que permite recibir comentarios de un número particular de usuarios para comprender que la usabilidad permite que la aplicación se use sin obstáculos

Paso 9: mejora

Sucede que después de las pruebas beta pueden surgir algunas incertidumbres. Para solucionar estos problemas, es necesario mejorar la funcionalidad de UX.

Cuando todo está en el lugar correcto, el departamento de control de calidad prueba la aplicación por última vez generando escenarios de prueba de extremo a extremo.

Paso 10: lanzamiento

¡Aquí estamos! Nuestra aplicación está lista para ser lanzada al mercado. Pero tenga en cuenta que los mercados de aplicaciones tienen sus propias políticas de verificación. Para el lanzamiento cualitativo es importante seguir los siguientes pasos:

  1. compile el archivo .apk (para Android) o el archivo .ipa (para iOS) configurado para su lanzamiento;
  2. prepare una breve descripción de su aplicación utilizando todos los idiomas para los que está diseñada;
  3. reunir capturas de pantalla y / o vista previa de video e imagen de la aplicación;
  4. establecer restricciones de edad, según lo requieran los mercados de aplicaciones;
  5. complete el cuestionario obligatorio, como base de admisión para cargar una aplicación.

Obtenga más información sobre cómo crear una aplicación móvil: se explican 10 etapas cruciales + Infografía

No creo que realmente te equivoques completamente, pero si el desarrollo web es realmente frustrante, quizás valga la pena intentar otra cosa. Nadie sabe realmente cuán populares seguirán siendo las aplicaciones móviles, especialmente con el movimiento hacia la IA que podría significar que las personas ni siquiera necesitan descargar aplicaciones, es posible que haga todo a través de Siri o Cortana en el futuro o al menos por cosas que no lo hacen ‘ No es necesario instalar una aplicación completa.

Si yo fuera usted, consideraría aprender C #: es posible que no se considere el mejor lenguaje, y algunas personas simplemente tienen esta cosa extraña contra Microsoft, pero C # se puede usar en cualquier lugar.

Puede usarlo para escribir aplicaciones de iOS con Xamarin, pero también para desarrollo web, desarrollo de Linux y Mac usando .NET Core o Mono, aplicaciones de Windows (aplicaciones de escritorio y UWP / Store) y prácticamente cualquier otra cosa.

No importa en qué elija enfocarse a continuación, tendrá que seguir afilando la sierra y aprendiendo nuevas habilidades si desea mantenerse relevante; ya sean nuevos lenguajes o nuevos marcos, etc.

He trabajado en numerosos trabajos que requerían C # y siempre me ha servido muy bien. El nuevo Microsoft que hemos visto en los últimos años realmente está tratando de ser inclusivo y multiplataforma, lo cual es una gran cosa para ver: cosas como .NET Standard 2.0 y XAML Standard que acaban de anunciarse en Build (próximamente, esto año) se ven geniales y permitirán un código multiplataforma aún más fácil y el intercambio de UI.

Puede comenzar a usarlo de forma 100% gratuita descargando Visual Studio 2017 Community Edition (Windows), Visual Studio para Mac o Visual Studio Code (Cross Platform) y puede aprender sobre el desarrollo web con C # y el sitio oficial de Microsoft ASP.NET aquí:

Aprenda ASP .NET

Si te interesa el desarrollo móvil, echa un vistazo a Xamarin:

Centro de desarrolladores – Xamarin

Excelente pregunta Y voy a abordarlo desde dos puntos de vista.

Para la mayoría de las empresas, las organizaciones que brindan servicios a clientes y usuarios, necesitan tener ambas. Tenemos bsite y app. El sitio web o la aplicación basada en la web es cómo hacer que las personas que son nuevas en su servicio interactúen. Personas apuradas y no necesariamente comprometidas con usted. Vienen a través de Google y Facebook. Vienen a través de sitios de comparación y agregadores. Usan su servicio entre una gran cantidad de otros. Usan su servicio desde computadoras de escritorio o portátiles, computadoras compartidas, tal vez en el trabajo. O mientras están en movimiento. No están muy seguros de ti. Pero si se les da la oportunidad, pueden convertirse en clientes o usuarios más dedicados. Y ahí es donde entra la aplicación, para todas las plataformas principales. Las aplicaciones permiten una interacción más profunda, una mejor integración con las capacidades del dispositivo, un uso más fácil de cosas como compartir, cámara, contactos, ubicación y orientación, etc. Las aplicaciones pueden funcionar mejor con datos fuera de línea. Los usuarios de la aplicación son, por definición, un poco más dedicados a ti. Las aplicaciones son cómo permite que clientes más comprometidos interactúen con usted. Lo más importante, el uso de aplicaciones también es una actividad de tiempo libre. Las personas a menudo recurren a las aplicaciones cuando tienen tiempo libre. Esto permite una interacción mucho más significativa. Por lo tanto, como empresa, no lo es. Necesitas ambos. Necesita la web para atraer a nuevos clientes y para atender a los clientes que tienen prisa o están limitados de alguna manera. El alcance de la web es amplio, pero algunas interacciones pueden ser superficiales. Sin embargo, también puede usar la web para tareas más complicadas y establecer relaciones a más largo plazo. Mientras que el alcance de las aplicaciones es limitado, para aquellos que se han esforzado por instalar la aplicación, pero puede ser profundo.

Ahora. Mirándolo como desarrollador. Que deberias hacer En primer lugar, dado todo lo anterior, sin duda hay una ventaja comercial: tendrá más demanda, si también sabe cómo desarrollar aplicaciones web y aplicaciones móviles nativas. En segundo lugar, hay una ventaja intelectual. Desarrollar aplicaciones nativas significa usar un conjunto más formal de herramientas de desarrollo: Objective C y Cocoa para iOS y Java para Android. Esto solo puede ser beneficioso para usted como desarrollador. Todavía necesita las habilidades que tiene del desarrollo web, pero puede mejorarlas trabajando en un paradigma ligeramente diferente. Para empezar, puede ser una curva de aprendizaje empinada, pero valdrá la pena. Pero iría más allá y recomiendo encarecidamente que tome las habilidades que obtendrá y aprenda a ser un desarrollador de pila completa, desarrollando también el lado del servidor. Hay una broma en los círculos de desarrolladores que la mayoría de las personas afirman ser desarrolladores de pila completa siempre que todas las partes de la pila sean JavaScript. En realidad, para ser un buen desarrollador de pila completa, necesitará al menos una de las siguientes cuatro tecnologías del lado del servidor en su cinturón de herramientas; C # y .NET, o Java, o Python, o JavaScript y node.js.

El desarrollo móvil y web son opciones profesionales sólidas. Un enfoque podría ser tomarse el tiempo para aprender iOS y luego:

  • Tienes una mejor idea de cómo es cada uno y qué te atrae
  • Tiene una base más amplia de experiencia: puede ayudar a las personas que desean hacer desarrollo móvil y web.

El desarrollo principal de iOS tiene mucha menos rotación: tomas lo que Apple proporciona y algunas herramientas de terceros conocidas y listo. Hay más rotación en los márgenes: React Native vs. Weex vs. RubyMotion, etc.

Otro camino que podría hacer es ingresar al back-end y convertirse en un desarrollador web de pila completa, que a menudo está mejor pagado que el front-end o el móvil.

Cualquiera de estos podría ser una carrera satisfactoria.

La mejor opción de carrera es ser increíble en un entorno tecnológico que le interese lo suficiente como para ser increíble. He hecho iOS y front-end moderno y los desafíos son * diferentes * pero uno no es estrictamente mejor que el otro. Conocer ambos lo ayudará a desarrollar habilidades que son raras y valiosas en ambos lados. Lo sentimos, el software es simplemente difícil a veces. Busca algo que encuentres que valga la pena, así que aún lo tendrás cuando diagnostiques un puntero colgante o una configuración de WebPack.

Gracias por la solicitud. Creo que dado que ya tiene un año de experiencia en la web, continúe y obtendrá beneficios, ya que le resultará fácil adaptarse del desarrollo web al desarrollo móvil utilizando marcos híbridos. Aunque no estoy en frameworks híbridos y soy un desarrollador nativo de iOS. ¿Qué tan seguro está de que no sentirá lo mismo con iOS o Android? Digo que vale la pena invertir tiempo, creo que nunca es demasiado tarde para comenzar una carrera en iOS. Hay muy pocos desarrolladores de iOS y Mac OS en el mundo (en comparación con Android y otras plataformas), por lo que diría que obtendrás una carrera fácilmente con él.