¿Qué se necesita para convertirse en un desarrollador de iOS?

Hay tres aspectos en ser un desarrollador de iOS. Son complejos y toman tiempo para perfeccionarse, así que no se asuste si aún no los comprende por completo. Tiene un buen comienzo, ya tiene un poco de comprensión y una aplicación publicada en la tienda de aplicaciones en un corto período de tiempo. Muchos nunca llegan tan lejos y se rinden antes. Crece a partir de ahí, lenta pero constantemente, llenando los vacíos que tienes en tu conocimiento.

Existen los tres aspectos de ser un desarrollador de iOS (o cualquier tipo de desarrollador en cualquier plataforma) a un alto nivel. Tardan años en perfeccionarse, así que no te preocupes.

Antes de enumerarlos, quiero disipar la última preocupación que tienes: no habrá una próxima gran cosa que haga que todo esto quede obsoleto. Los fundamentos de la informática han sido los mismos durante décadas. No han cambiado cuando pasamos de mainframes a computadoras personales. No han cambiado cuando se creó Internet. No han cambiado cuando los dispositivos móviles salieron a la luz. Introducimos nuevas tecnologías a un ritmo rápido, pero las bases siguen siendo las mismas. Una vez que los conozca, podrá adoptar cualquier tecnología nueva mucho más rápido de lo que es ahora.

El primer aspecto de ser un desarrollador de iOS es la programación . Dices que entiendes a Swift y eso es bueno. Pero Swift es solo un lenguaje de programación. La programación es más que solo conocer las características de cualquier idioma. Hay diferentes niveles de conocimiento que debes poseer para ser un buen programador.

  1. Necesita conocer los conceptos básicos de la programación. Esto incluye, por supuesto, Swift y sus construcciones básicas, como control de flujo, colecciones, bucles, funciones, clases, etc., pero estas son solo herramientas. Lo importante que debe comprender es cómo razonar sobre los problemas y resolverlos utilizando las herramientas a su disposición.
  2. Necesita saber programación orientada a objetos. Hablando prácticamente, OOP es un paradigma de programación para ayudar a la organización de su código. Por lo tanto, debe comprender conceptos como encapsulación, composición, herencia, polimorfismo, etc. Y no olvide los patrones de diseño.
  3. Necesita conocer algoritmos y estructuras de datos. La programación ha existido durante mucho tiempo, por lo que hay construcciones que se han desarrollado a lo largo de los años para ayudar a resolver problemas que son cada vez más complejos. Aquí debe comprender conceptos como la recursión, algoritmos básicos como la ordenación y la búsqueda binaria, y estructuras de datos básicas como pilas, colas, tablas hash, listas vinculadas, árboles y gráficos, además, por supuesto, los algoritmos para manejarlos.

El segundo aspecto de ser un desarrollador de iOS es conocer el propio iOS. Aquí debe conocer los conceptos fundamentales de la plataforma, cómo funciona, sus patrones de diseño y cuáles son las partes más fundamentales que necesita saber. iOS es grande y complejo, pero no necesita saberlo todo. Si no necesita hacer procesamiento de imágenes, por ejemplo, no necesita conocer Core Image. Si no estás haciendo un juego, no necesitas saber SpriteKit o GameplayKit. Elija las partes de iOS para lo que necesita en este momento.

Pero definitivamente necesita conocer los fundamentos que son comunes a cualquier aplicación de iOS. Esos son los conceptos que lo ayudarán a ampliar su conocimiento de la plataforma más fácilmente. Escribí más sobre esto aquí: The Concepts at the Foundation de cualquier aplicación iOS y más en otros artículos en mi blog aquí

También hice esta guía gratuita, que incluye un poco más que el artículo que vinculé anteriormente: los 9 conceptos fundamentales que todo desarrollador de iOS debe conocer

El tercer aspecto es lo que rodea el desarrollo de iOS. Esto es menos importante que los dos que enumeré anteriormente. Este es un conocimiento más genérico de la informática. Si llama a una API web, por ejemplo, es útil saber cómo funciona Internet, qué es el DNS, qué es el protocolo HTTP, cómo está estructurada una API REST, etc. Quizás conozca más sobre bases de datos o cómo un sistema operativo trabajos.

Y un bono. Hay muchas cosas más interesantes, como inteligencia artificial, aprendizaje automático, procesamiento del lenguaje natural, redes neuronales, etc. Solo las necesita para las cosas más complejas. Los estudié en la universidad y nunca los usé durante mi carrera. Pero de hecho son temas interesantes.

Buena suerte y, de nuevo, no se asuste. Me llevó a mí y a muchos otros años aprender todo esto, pero puedes ir progresivamente, no tienes que saber todo de una vez. Elija el siguiente paso y continúe de manera constante. Llegarás ahí.

Comenzar el desarrollo en cualquier idioma puede parecer muy difícil al principio, incluso más si nunca antes lo ha codificado. Pero tenga la seguridad, no lo es. Incluso si parece ser muy difícil al principio, se volverá mucho más simple a medida que avance y aprenda. Confía en mí, también aprendí por mi cuenta, y pensé que nunca podría hacerlo, pero aquí estoy. A continuación, detallaré algunos tutoriales y cursos excelentes para que pueda comenzar con el desarrollo de iOS, algunos son gratuitos y otros son de pago. También adjuntaré algunos sitios geniales para aprender más técnicas y habilidades especiales en el desarrollo de iOS.

Tendrá ciertos requisitos para comenzar, y estos son:

  1. Tener una Mac
  2. Instalar Xcode
  3. Estar dispuesto a pasar tiempo para aprender
  4. Dedicación

Ahora, al aprendizaje real. La mejor manera de aprender es pasar 20-30 minutos por día. De esta manera, todavía aprendes todos los días, pero no es abrumador. Entonces, digamos que levántese 30 minutos antes y codifique, o por la tarde encuentre algo de tiempo para codificar. Intenta ser consistente y mantenerlo al mismo tiempo. Esto te permitirá aprender mucho mejor en mi opinión. Luego, después de 1/2 semana, comience a trabajar en sus propios proyectos. Piense en una pequeña aplicación, una pequeña idea de proyecto y luego compárela un fin de semana. ¿Suena loco? No es … Solo una aplicación por sábado / domingo. Esto lo ayudará inmensamente a aplicar sus habilidades y, mientras trabaja por su cuenta, aprenderá a usar Stack Overflow y Google para depurar. También aprenderá habilidades que no se habrían pensado en algunos cursos. Entonces, sábado y domingo, en lugar de sus 20/30 minutos … construya un proyecto simple. Puede ser desde un simple temporizador, una aplicación basada en la ubicación hasta una aplicación para compartir fotos. La única limitación es tu imaginación y las 48 horas del fin de semana. También ayuda mucho tener un diario donde marque los días en que codificó o lo que aprendió. También asegúrese de registrarse en Github o en un sistema de administración de Git para hacer siempre una copia de seguridad de su código.

Tu semana debería verse un poco así:

Lunes a viernes: 25 minutos de código (a la misma hora todos los días)

Sábado a domingo: construya un pequeño proyecto y comparta el código abierto. Tienes 48 horas y puedes construir cualquier cosa.

TL; DR

  • Codifique todos los días durante 20-30 minutos
  • Los fines de semana construye un proyecto
  • Elija un curso y sígalo
  • Sea persistente en la codificación todos los días
  • Rastree su código en una marca de diario cada día que codifique
  • Escriba brevemente lo que aprendió diariamente
  • Código abierto todo su código
  • No te desanimes
  • Comience a codificar 🙂

CURSOS COMPLETOS GRATUITOS

  • Hackear con Swift (Escrito)
  • Aprenda el desarrollo de iOS con Swift y Xcode (escrito)
  • Aplicaciones Matt Heaney (Tutoriales completos del juego)
  • Desarrollo de aplicaciones iOS 8 con Swift – Curso gratuito de Stanford en iTunes U (curso completo)

CURSOS COMPLETOS PAGADOS

  • El curso completo para desarrolladores de iOS 9: compila 18 aplicaciones para iOS9
  • Bitfountain
  • Comience a aprender en Treehouse gratis

Además, debe consultar cualquier otro curso en Udemy, Udacity, Lynda e iTunes U.

RECURSOS IOS GRATUITOS Y TUTORIALES EXCLUSIVOS

  • Videos de la sesión de la WWDC
  • Ray Wenderlich
  • GeekyLemon
  • Brian Advent
  • academia Khan
  • Documentación de Apple
  • App Coda
  • Tutorial de iOS (iPhone, iPad)
  • Objective-C / Swift Tutoriales, recursos y competencias para el desarrollador de iPhone

Mira, puede ser difícil al principio. Fracasarás con frecuencia y querrás dejarlo muchas veces. Pero confía en mí, solo aguanta. Sé que dejar de fumar parecerá la única opción, ¡pero no lo es! Será mucho más fácil. Luego puede buscar problemas en Google, buscar en Stack Overflow o preguntar en los foros de desarrolladores de Apple. ¡Aguanta los tiempos difíciles y serás recompensado más adelante! ¡Esto va a valer la pena!

Si necesita algo, no dude en pedirme ayuda, o cualquier otro codificador de iOS que conozca, ¡la mayoría está feliz de ayudar! (@ JulianEngel13)

Espero que ayude,

Julian

Gracias por el a2a.

En realidad, no necesita 2-3 años de experiencia para obtener el trabajo. Casi no hay ningún equipo de ingeniería en ningún lugar que cumpla religiosamente con los requisitos de la descripción del trabajo si aparece la persona adecuada.

Lo que debe preguntarse es por qué piden 2-3 años de experiencia, qué es lo que realmente quieren y cómo pueden dárselos.

Por qué preguntan

Piden los 2-3 años de experiencia principalmente para que no pierdas su tiempo. Necesitan algunos mecanismos de activación en el proceso de solicitud para garantizar que no pierdan todo su tiempo entrevistando a malos candidatos.

Es su forma de decir: “Este no es un rol de alto nivel, pero tampoco es una pasantía. Esperamos que sepa lo que está haciendo y que demuestre un mínimo de profesionalismo”.

Qué es lo que realmente quieren

Quieren a alguien que pueda ponerse al día para quitar las tareas básicas de desarrollo de sus planes dentro de las primeras 2 semanas, y alguien que escalará para ser un miembro sólido del equipo en 3 meses. Probablemente esperan que dentro de un año seas alguien que pueda manejar las principales características o proyectos por tu cuenta.

Quieren a alguien que sea confiable. Quieren una cierta cantidad de pruebas sociales e históricas de que otras personas no te odian, y que no es un fastidio trabajar con ellos.

Quieren a alguien que sea profesional y sepa trabajar con sus herramientas y procesos en lugar de ser una prima donna que siempre sepa una mejor manera de hacer todo.

¿Cómo puedes dárselos?

Presta atención a esto primero, porque las otras cosas no importan si no haces esto primero. ¿OK listo?

Cree una aplicación y publíquela en la tienda de aplicaciones. Preferiblemente publique múltiples aplicaciones. No tienen que ser súper populares, no tienen que ganar mucho dinero y ni siquiera tienen que ser hermosos. Lo que sí necesitan es

  1. Funcionar correctamente. Algunos errores aquí y allá pueden ser comprensibles, pero no debería molestarse a menos que esté razonablemente seguro de que funciona bien
  2. Estar limpio No necesita estar bellamente diseñado, pero debe seguir las pautas de HCI, qué diseño debe ser consistente en toda la aplicación. Tómese el tiempo para hacerlo bien.
  3. Demuestre que utilizó múltiples marcos / bibliotecas para hacer cosas interesantes. Cuando su aplicación hace cosas con animación, dibujo, redes, AV, almacenamiento de datos, etc., muestra que está aprendiendo una variedad de marcos y no es necesariamente un pony de un solo truco. (si crea varias aplicaciones, esto es más fácil)
  4. Sea algo de lo que esté legítimamente orgulloso de mostrar a la gente.

Ok, ahora tienes una aplicación en la tienda de aplicaciones y has incluido enlaces a ellas en tu currículum. Así que ahora las personas están razonablemente seguras de que tienes alguna idea de lo que estás haciendo y no eres un novato completo. ¿Qué más debes hacer?

  • Si se siente valiente, coloque el código de su aplicación en un repositorio público en GitHub para que los posibles entrevistadores y examinadores puedan ver su código. No haga esto a menos que tenga bastante confianza en su estilo de codificación y se haya tomado el tiempo para comentar y estructurar el código a fondo. Esto puede demostrar que sabe cómo escribir un buen código y que no tiene miedo de abrirse a las críticas.
  • Participe en uno o más proyectos de código abierto para bibliotecas móviles. Puede mencionar que es un contribuyente en estos proyectos en su currículum. Ayudará a demostrar que puede trabajar un poco con otras personas y puede participar en un esfuerzo de equipo que no se trata solo de usted.
  • Aprenda nuevos marcos y herramientas. ¿Usaste Flurry en tu último proyecto? Use MixPanel en este caso. ¿Utilizaste AFNetworking antes? Prueba esta vez una simple red en bruto. ¿Sueles utilizar GitHub? Prueba SVN para un proyecto. Aprende a trabajar con diferentes herramientas y tecnología. Esto ayudará a completar su conjunto de habilidades impresas, lo ayudará a hablar de manera inteligente sobre las herramientas que USTED elige utilizar, y mostrará que no está tan preparado en sus formas que desalienta otras formas de haciendo cosas.

Una vez que tiene varias aplicaciones que no son malas en la tienda de aplicaciones, el código disponible para que todos puedan ver y comentar, está participando en al menos un proyecto de código abierto, y ha aprendido una variedad de herramientas y bibliotecas. no le importará a ningún equipo de desarrollo si realmente tienes dos años de experiencia. Ellos van a querer entrevistarte.

Cuando probé por primera vez mi nuevo iPhone, tuve curiosidad al instante sobre cómo funcionaba todo en él. Para satisfacer mi curiosidad, comencé a aprender el desarrollo de iOS. ¿Quieres convertirte en un desarrollador de iOS? ¡Déjame darte algunos consejos que desearía saber cuando empecé!

¿Cuál es el trato con el desarrollo de iOS? ¿Es fácil, difícil o intermedio? Muchas veces me han preguntado cómo comencé con el desarrollo de iOS y cuál fue el proceso de aprendizaje para convertirme en un desarrollador de aplicaciones de iOS.

Mi respuesta siempre ha sido la misma: lleva tiempo, esfuerzo y paciencia superar la curva de aprendizaje. Pero primero, necesitará algunos consejos sobre las herramientas necesarias y los recursos de aprendizaje necesarios para convertirse en un desarrollador competente de iOS.

Equípate

Desafortunadamente, no hay forma de desarrollar aplicaciones iOS en Windows. Necesitará OS X para esto, lo que significa que deberá comprar un iMac, Mac mini o MacBook. Si estás acostumbrado a trabajar en PC, esto puede ser un poco caro, pero vale la pena.

Además, no tiene que ir con una Mac modelo superior. Una máquina con un procesador basado en Intel y la versión Snow Leopard de Mac OS X será lo suficientemente buena, ya que este es el requisito mínimo para el IDE de Apple llamado Xcode. La versión más nueva, Xcode 5 requiere OS X 10.8 (Mountain Lion). Las Macs más antiguas que no son compatibles con Mountain Lion aún son compatibles con Xcode 4, pero es mejor tener disponible la versión más reciente de Xcode. Actualmente, la Mac menos costosa es una Mac Mini, desde $ 599. Por supuesto, también puedes comprar una Mac usada más barata.

PERO NO QUIERO TRABAJAR EN UN MAC

Probablemente esté pensando, ¿por qué no puedo instalar OS X en mi PC (en una máquina virtual o construir un Hackintosh)? Esto podría ayudarlo a comenzar, pero hay muchos problemas que pueden ocurrir y recomendaría no hacerlo. Si desea ser un desarrollador profesional, la mejor manera es tener un hardware apropiado que sepa que es estable y siempre funcionará sin problemas.

Xcode IDE

Después de que hayas tomado tu nueva y brillante Mac, el siguiente paso es descargar Xcode. Xcode es el IDE (Entorno de desarrollo integrado) oficial para iOS, que contiene un entorno de desarrollo completo, que incluye:

  • Compilador
  • Constructor de interfaz
  • Marcos
  • Simulador
  • Biblioteca de referencia de documentación completa

Lo mejor de todo es que Apple proporciona este SDK completamente gratis y está disponible en la Mac App Store. ¿Quieres ver lo increíble que es Xcode y qué contiene? Puedes ver eso aquí.

Con Xcode instalado, podrás escribir y compilar aplicaciones para iPhone. Pero hay un truco. Si no está inscrito en el programa para desarrolladores de iOS, solo podrá compilar sus aplicaciones para el simulador. Esto es genial, pero no es suficiente si desea probar aplicaciones más complicadas que usan una cámara, giroscopio u otras cosas disponibles solo en un dispositivo iOS real.

Programa para desarrolladores de iOS

Una vez que haya creado su primera aplicación para iOS, querrá probarla en un dispositivo real o publicarla en la App Store para revelar su obra maestra al mundo (y tal vez ganar algunos dólares en el proceso). Eso significa inscribirse en el Programa para desarrolladores de iOS (que cuesta $ 99). También le otorga acceso a una gran cantidad de recursos útiles para desarrolladores en el Centro de desarrollo de iOS, foros oficiales de desarrolladores de Apple y versiones beta de iOS y Xcode.

Puede inscribirse y formar parte de la comunidad de desarrolladores de iOS aquí.

Sobre Objective-C

Las aplicaciones de iOS están escritas en el lenguaje de programación Objective-C. Objective-C es un lenguaje de programación orientado a objetos basado en C. Eso significa que Objective-C es un superconjunto de C y toma todo de C, pero también agrega algunas funcionalidades adicionales, como mensajes de estilo Smalltalk.

La programación orientada a objetos es un paradigma de programación que le permite dividir el código de su aplicación en objetos que tienen campos y métodos de datos. Estos objetos luego interactúan entre sí para implementar un comportamiento específico. La programación orientada a objetos facilita el desarrollo de código estructurado y mantenible.

Zambullirse en Objective-C

Si comienza a buscar un libro para empezar, encontrará muchos de ellos. Lea las reseñas y elija una para usted o, para empezar, siga mi sugerencia: lea Programación en Objective-C por Stephen Kochan.

También puede comenzar con otro gran libro de The Big Nerd Ranch llamado Objective-C Programming: The Big Nerd Ranch Guide

Además, puede obtener más información sobre Objective-C en la biblioteca oficial de Apple o probarlo en Code School.

Toque de cacao

Después de tener una comprensión básica de Objective-C, es hora de usarlo en un entorno de programación iOS. Al desarrollar aplicaciones de iOS, utilizará Cocoa Touch, el marco de UI (interfaz de usuario) de Apple que impulsa las aplicaciones de iOS. Es una biblioteca con marcos y API, que contiene todo, desde botones táctiles, mapas personalizados, reproductores de video y audio hasta notificaciones de dispositivos.

Obtenga más información sobre la interfaz de usuario de iOS

Creando tu aplicación iOS

Hay dos formas de aprender a desarrollar aplicaciones para iOS: libros o videos tutoriales. Es mejor usar ambos.

Con respecto a los libros, una muy buena elección es la Programación de iOS: The Big Nerd Ranch Guide 4th Edition. La última edición contiene todas las actualizaciones importantes integradas en iOS 7 y Xcode 5.

Cuando se trata de videos, la mejor opción son los videos tutoriales de la Universidad de Stanford. Por suerte para ti, las conferencias de Stanford están disponibles en línea de forma gratuita. Este curso contiene todo lo que necesitas para aprender los conceptos básicos del desarrollo de iOS y, a medida que lo sigas, escribirás tu primera aplicación para iPhone.

Una vez que haya terminado con estos, se sentirá completamente seguro de escribir sus propias aplicaciones.

¡No te olvides de la documentación oficial de Apple!

Apple se encarga de sus desarrolladores, por lo que ha creado un recurso en línea increíble, que contiene todo lo que necesitará si se queda atrapado con algo mientras desarrolla su aplicación. Contiene código de ejemplo y tutoriales para que pueda comenzar con tecnologías y aspectos específicos de las aplicaciones de iOS.

Aprenda a usar la documentación oficial desde el principio. Es una gran ventaja si dominas usarlo desde el principio. Le facilitará las cosas en el futuro cuando trabaje con cosas nuevas que no haya encontrado antes.

¿Qué sigue?

La mejor manera de ampliar su conocimiento es continuar creando aplicaciones. ¿Tiene una idea para una aplicación, pero no sabe cómo escribirla desde el principio? Eso no debería preocuparte; aprenderás cosas a lo largo del camino. Hay una gran cantidad de recursos en Internet para el desarrollo de iOS y estoy seguro de que encontrarás el camino.

Con cada problema viene una solución, y con cada solución su conocimiento crecerá y se volverá más seguro y un desarrollador de iOS más competente. Si persiste con su proyecto y completa la aplicación, definitivamente aprenderá mucho en el camino. Eso significa que estará listo para un proyecto nuevo y más complicado.

Otros valiosos recursos de iOS

  • Desbordamiento de pila
  • GitHub
  • NSScreenCast
  • iOS Dev Weekly
  • NSHipster
  • RayWenderlich tutoriales
  • iOS Dev Tools
  • Cacao

Entonces, el verdadero desafío para programar en iOS no es Objective C o Swift. Son solo idiomas y si tienes un don natural para comprender los lenguajes informáticos, estarás bien.

El verdadero desafío es comprender las clases de iOS UIKit y Foundation.

UIKit es lo que es difícil. Existen algunos protocolos delegados complejos (como UITableView, UICollectionView) que no son triviales y que comprender cómo y cuándo usarlos es clave para tener éxito.

Los protocolos delegados “fuerzan” su código a una organización y formato muy específicos. La mayor parte de su código se escribirá dentro de una función sobrecargada UIViewController (viewDidLoad, viewWillAppear, etc.) o una función de protocolo delegado (cellForRowAtIndexPath …). Por lo tanto, realmente necesita comprender qué HACEN esas funciones y cómo funcionan juntas para hacer su aplicación.

Las cosas se han vuelto MÁS FÁCILES en los últimos años (introducción a Storyboards and Segues, TableViewControllers estáticos, etc.).

Comprender el diseño automático es obvio, pero puede ser crítico para que su aplicación funcione en muchos tamaños y formas de dispositivos diferentes. (Te fuerzan el diseño automático en iOS 8). Pero el diseño automático realmente te hace escribir “lógica” al definir un conjunto de restricciones algebraicas complejas. Y lleva un tiempo ser bueno en eso (incluso con un título en Matemáticas, al menos desde mi experiencia)

Puede llegar bastante lejos utilizando algunos ejemplos de código y tutoriales, pero realmente se necesita algo de experiencia para saber qué es posible.

Semana0: Obtenga todo su material. Configure su iMac / Macbook, instale XCode, regístrese para obtener una licencia de desarrollador, lea la guía Swift / Objective-C, lea las Pautas de interfaz humana y observe lo que hace que una aplicación desarrollada por Apple sea excelente. Observe su enfoque de solución.

Semana 1: Comience con Ray Wenderlich. Este es un sitio web realmente genial para comenzar, con excelentes tutoriales completos y código fuente descargable (eso es realmente útil). En esta etapa, preste atención para sentirse cómodo con el IDE, los objetos, los controles y la sintaxis. Aprenda bien sobre Storyboards, segues, cómo conectar 2 storyboards, estructuras de datos, marcos, protocolos, delegados y otras características únicas de Objective-C / Swift.

Semana2: Crea prototipos de aplicaciones reales. Piensa en ideas y busca soluciones. Desde cero, encuentre soluciones que aprovechen la potencia que ofrece el SDK de iOS. No intentes simplemente rehacer conceptos que has aprendido en otros idiomas, por ejemplo, Python, y traducirlos a iOS. En cambio, busque inspiración en aplicaciones iOS de alta calidad como iTunes y proponga soluciones iOS. Es decir, piensa en iOS desde cero. En el proceso, familiarícese con las ofertas de idiomas. Explote los controles como Vibrancy Views, SplitViewController y otros controles que ofrece iOS SDK y entienda por qué se ofrece cada componente. Una vez que vengas con un prototipo para una idea, déjalo a un lado y sigue adelante. Intenta desarrollar el próximo prototipo. Esta es una etapa de incubación.

Semana 3: Construya una aplicación completa del mejor prototipo de la semana 2. Inicio (puede que haya completado esta última semana), diseñe, proporcione una solución iOS que se adhiera a Apple HIG, desarrolle-> depuración-> prueba-> depuración e implementación. Utilice varias herramientas de garantía de calidad, como instrumentos, análisis de código, depurador (LLDB es muy útil para detectar y analizar fallas) y mucho más. Una vez que esté satisfecho con la calidad de su código, intente que sea revisado por pares. A continuación, conozca los matices de firmar una aplicación y publicarla en la tienda de Apple.

En esta etapa, ha cubierto las habilidades esenciales necesarias para ser un desarrollador de iOS. Si puede unirse a una organización donde puede contribuir con sus habilidades, presente su solicitud allí. O si tienes una idea genial, invierte tiempo y desarrolla una gran aplicación.

Si bien muchos podrían recomendar diferentes habilidades, herramientas, lenguajes de programación y planes de pasantía, sugeriría:

¡Piensa diferente!

Considere cómo las personas diferencian entre iPhone y otros dispositivos móviles. Aman los iPhones porque son diferentes, son innovadores. Tienen todas las últimas características y tecnologías, pero sin comprometer la simplicidad y la funcionalidad del dispositivo.

Tienes que aplicar el mismo enfoque al desarrollo de aplicaciones iOS. Póngase en el lugar del usuario, comprenda sus necesidades, expectativas y desafíos. Manténgase actualizado con las últimas tecnologías y tendencias, y busque formas de integrarlas en sus aplicaciones para mejorar la experiencia del usuario sin hacer que se vea y se sienta complejo como una telaraña. En pocas palabras, aumente su curiosidad, vea la innovación en todas partes y proponga algo diferente para brindar una experiencia ‘IMPRESIONANTE’ a los usuarios finales todo el tiempo.

Si se pregunta cómo puede convertirse en un desarrollador profesional de iOS, esto es lo que le recomendaría que haga, en este orden. Hablo de (a) mi experiencia profesional en 5 años como consultor de iOS y 8 años como desarrollador de software y (b) como gerente de contratación: he contratado a varios desarrolladores de iOS en los últimos 3 años para manejar el trabajo de desbordamiento que yo Estoy demasiado ocupado para hacerlo. Estas son las cosas que busco al contratar a un desarrollador de iOS. El orden aquí es importante: cada paso posterior se basa en el anterior, y en algunos casos, los primeros son un requisito previo para los posteriores (como en absolutamente esencial ).

1. Aprende artesanía de software

Hay muchos términos para describir la forma en que se construye el software. Estoy eligiendo la artesanía del software, pero el término es irrelevante. Debe saber cómo construir bien el software: cómo estructurarlo bien, cómo probarlo, cómo depurarlo y cómo usar el control de código fuente, como mínimo. Si aún no se siente cómodo con estas prácticas, debe aprenderlas ahora, antes de continuar. Recomiendo leer The Pragmatic Programmer para comenzar.

2. Aprenda a usar el control de fuente

El control de la fuente es tan importante que lo mencionaré dos veces. Sí, es parte de la artesanía del software, y sí, es lo suficientemente importante como para tener su propia sección. Si va a trabajar con otro desarrollador de iOS (e incluso si no lo está), absolutamente necesita saber cómo usar el control de código fuente. Le brinda la capacidad de realizar puntos de control, retroceder en el tiempo a una versión anterior de su base de código y explicar por qué está realizando un cambio determinado. Es probable que use git, como lo hacen muchas empresas hoy en día, pero puede consultar la descripción del trabajo para ver qué usan. Para git, debes saber:

  • cómo inicializar un repositorio
  • Cómo clonar un repositorio
  • cómo comprometerse y empujar a un control remoto
  • cómo extraer y fusionar cambios desde un control remoto
  • cómo verificar el estado de su repositorio local
  • cómo (y cuándo) crear y fusionar ramas
  • cómo crear etiquetas (debe hacer esto cada vez que se envíe a la App Store, como mínimo)

Estos son los conceptos básicos: hay mucho más que puedes hacer con git, y puedes (y debes) aprender más a medida que avanzas. Si aún no conoce git, puede comenzar a aprenderlo en try.github.io.

3. Aprende Swift u Objective-C

Tal vez esto es un hecho, pero si desea hacer un desarrollo profesional de iOS, necesita conocer Swift u Objective-C (sabiendo que ambos serían lo mejor). Para un puesto de nivel junior, al menos debe conocer la sintaxis y una buena parte del marco de Foundation (objetos, colecciones, tipos de datos, redes, JSON). Además de esto, necesita conocer conceptos básicos orientados a objetos, como qué es un objeto, qué es una clase y cómo escribir métodos.

Puede aprender redes, JSON y más mientras crea su primera aplicación Swift en el curso Beginning Swift. O puede comenzar a aprender Objective-C con Cómo construir una aplicación híbrida de iOS.

Y puede aprender todo lo que necesita saber sobre Swift en iOS Boot Camp.

4. Aprende iOS

De nuevo, esto es probablemente un hecho. Si quieres ser un desarrollador profesional de iOS, debes conocer iOS. Esto significa que debe tener una buena comprensión de cómo:

  • crear vistas (con guiones gráficos, xibs o mediante programación: puntos de bonificación por conocer los tres)
  • manejar la interacción del usuario a través de varios controles (botones, interruptores, controles deslizantes, etc.)
  • mostrar datos en una vista de tabla
  • mostrar alertas
  • manejar la navegación y la transición entre vistas
  • mostrar imágenes, etiquetas y vistas de texto
  • integrarse con API REST y analizar JSON

También debe conocer el ciclo de vida del controlador de vista y el ciclo de vida de la aplicación.

He ampliado esta sección en ¿Qué habilidades necesitaría para un trabajo como desarrollador de iOS ?, que se centra únicamente en lo que debería poder hacer con iOS para conseguir un trabajo. Y puede aprender la mayoría de estas habilidades en iOS Boot Camp, por lo que si aún no conoce iOS, le recomiendo que lo revise.

5. Crea una aplicación

Si realmente ha creado una aplicación, ha demostrado que sabe cómo crear una aplicación. Y si sabes cómo crear una aplicación, eres mucho más valioso para un posible empleador que alguien que dice que conoce Objective-C e iOS pero que en realidad no ha creado nada. Demuestra que sabes lo que estás haciendo creando una aplicación real.

Y dado que en este punto debería conocer el control de la fuente, debe usarlo mientras crea su propia aplicación. Tendrá una idea mucho mejor de qué archivos deben ignorarse y cuáles no si realmente ha utilizado el control de origen en un proyecto de iOS.

6. (Opcional, pero muy recomendable) Envía tu aplicación a la App Store

Estoy haciendo esto opcional porque para algunos empleadores, es posible que no necesite enviar una aplicación a Apple; puede haber un desarrollador senior en el equipo que lo maneja o solo pueden distribuir la aplicación internamente. Pero como es posible que deba publicar la aplicación de su futuro empleador en la App Store, debe saber cómo funciona el proceso. Y no hay mejor manera de aprender que haciéndolo usted mismo. Incluso si hay un desarrollador sénior en el equipo que es responsable de enviar la aplicación a Apple, puede haber ocasiones en las que necesite iniciar sesión en iTunes Connect para encargarse de actualizar los metadatos, lanzar una actualización o una gran cantidad de otras cosas. Haga esto y demostrará a su futuro empleador que puede llevar una idea a la App Store.

7. Solicite trabajos y demuestre lo que puede hacer por ellos.

Si desea hacer iOS profesionalmente, deberá solicitar un trabajo en algún momento. Pero antes de hacerlo, piense en esto: ¿por qué una empresa querría contratarlo? ¿Por qué las empresas contratan personas, en general?

¿Adivina qué? Quieren ganar dinero de ti. Quieren vender su trabajo y traer más dinero del que gastan en usted. O, si buscan reducir costos, quieren ahorrar más dinero del que gastan en usted. De cualquier manera, quieren aumentar sus ganancias contratándote.

Entonces, su trabajo es convencer a su posible cliente / empleador de que:

  • puedes hacer el trabajo de manera oportuna
  • puedes hacer el trabajo dentro de su presupuesto
  • puede ayudarlos a alcanzar sus objetivos comerciales (es decir, ganar más dinero)

La mayoría de las compañías ni siquiera te preguntarán sobre estas cosas. Podrían hacer una entrevista técnica y una entrevista de personalidad para ver si encaja bien y puede ayudarlos. Pero si comprende que ellos quieren ganar dinero con su trabajo y puede comunicar claramente cómo podrá hacerlo, es mucho más probable que lo contraten. Mostrarles su trabajo con iOS es una forma de hacer esto: les está demostrando que puede hacer las cosas. Y además de eso, si ya tienes una relación con alguien en la empresa y puedes obtener un referido o contratado por la persona que conoces, es mucho más fácil conseguir el trabajo. Así que asegúrese de centrarse en construir relaciones en este momento, a medida que continúa desarrollando sus habilidades y buscando trabajo.

Crea más aplicaciones iOS y estudia. No hay nada mejor que aprender haciendo, aumentado por unas pocas clases, seminarios y libros.

Obra
Elija un proyecto que parezca interesante y lo empuje a descubrir cosas que no sabe cómo hacer. Luego, date una fecha límite y reserva una o dos horas, al menos tres días por semana, para trabajar en ello. Entonces repite.

Aprendizaje
Cada vez que profundizo en una nueva tecnología, generalmente comienzo con un libro “For Dummies” sobre el tema como Objective-C Programming For Dummies. Por lo general, trabajaré en el libro que ofrece un montón de pequeños proyectos para construir.

Luego comenzaré el proceso de “Hacer” arriba y continuaré leyendo más libros, trabajando a través de tutoriales en línea y tomando clases y seminarios que cubren temas en los que estoy trabajando.

Aquí hay algunas maneras en que puede lograr 100k al año haciendo aplicaciones de Android.

1. Concéntrese en una aplicación, esta aplicación tiene que resolver la necesidad de otras personas. Cuantas más personas necesiten tu aplicación, más dinero ganarás. Para que las personas necesiten su aplicación, su aplicación debe resolver un problema para ellos. Para encontrar un problema que la gente necesita, mire a su alrededor, en Internet. Vea si sus amigos o familiares se están quejando, de qué se están quejando. Si ve una queja constante de algo o algún producto, eso significa que hay una necesidad en esta área, ¿puede resolver su queja proporcionándoles una aplicación? Si puede, haga que su aplicación lo implemente y lo promueva entre las personas que realmente lo necesitan.

Sin embargo, debes cambiar tu mentalidad. En lugar de enfocarse en cuánto dinero puede ganar, piense en el gran problema que puede resolver. Si su aplicación le da mucho valor a otras personas, el dinero vendrá naturalmente. Por otro lado, si solo está pensando en el dinero, puede renunciar a una idea o su aplicación cuando no gana dinero de inmediato. La mayoría de las aplicaciones requieren tiempo y esfuerzo para comercializarlas a millones, no verá dinero rápidamente. Si realmente cree en su aplicación y si ayuda a muchas otras personas, continuará incluso si no gana mucho dinero en 1 mes, 3 meses, 6 meses. Bill Gates se convirtió en la persona más rica del mundo porque hizo que la informática fuera asequible para todos en todo el mundo, resolvió una gran necesidad. Lo mismo con las aplicaciones o cualquier otro negocio.

2. Si no tienes una idea que cambie el mundo, está bien. Puede crear aplicaciones de nicho y aplicaciones generales. Las aplicaciones generales son aplicaciones que son adecuadas para todos, como calculadora, reproductor de música, reproductor multimedia, cupones, juegos, etc. Estas aplicaciones son más fáciles de promocionar porque puedes promocionarlas a cualquiera. La competencia también es mucho más alta que las aplicaciones de nicho. Sin embargo, el potencial es mucho mayor si puede promocionarlo a millones.
Tengo una aplicación de reproductor de música que acabo de lanzar hace 2 meses y obtuve unas 10K descargas hasta ahora, gana alrededor de $ 2.5 a $ 3 por día hasta ahora de los anuncios y una versión gratuita de anuncios pagados. Mi objetivo es tener millones de descargas y generar ingresos pasivos con el tiempo.

Music Player – Aplicaciones de Android en Google Play

Las aplicaciones de nicho son aplicaciones que son útiles solo para ciertas personas, puede ser una aplicación para abogados, contadores, médicos, bloggers, ciclistas, etc. Mire alrededor de Play Store y vea las mejores aplicaciones en ese nicho y vea si falta algo y si puede satisfacer la necesidad. Si puede resolver una necesidad en ese nicho, continúe y cree una aplicación.

3. Enjuague y repita, una vez que tenga una aplicación exitosa, puede implementar otra. Si una aplicación le gana $ 1,000 al mes, puede hacer 10 aplicaciones para alcanzar sus 100K por año. Sin embargo, si tiene 10 aplicaciones, la promoción demorará mucho más. Por lo tanto, le recomiendo que primero se concentre en una aplicación e intente que sea lo más exitosa posible, y luego pase a la siguiente.

4. Si desea hacer 100K por año con aplicaciones de Android, tome medidas ahora, no mañana, no la próxima semana. La única manera de lograr ese objetivo es tomando medidas, no solo planificando, pensando, buscando consejos, comparando, etc. Cada persona es diferente y cada situación es diferente, por lo que obtendrá muchas respuestas diferentes basadas en la experiencia de otras personas, pero la única manera de lograr el éxito es usted mismo. Para experimentar y descubrir qué funciona mejor para usted.

5. Por último, pero no menos importante, no importa lo que hagas, piensa en grande, piensa de forma no lineal. Si su aplicación tiene 100 descargas por día, desea llegar a 10,000 descargas por día. No desea que su aplicación tenga solo 100 descargas por día todos los días porque eso le tomará una eternidad alcanzar su objetivo. Desea establecer su objetivo mucho más alto, de modo que obligará a su cerebro a pensar en cómo lograr ese objetivo, encontrará todas las formas posibles para promoverlo y convertirlo en un éxito.

Estoy comenzando este mismo viaje, pero todavía soy un principiante que solo ha lanzado una aplicación hasta ahora. Realmente fue solo un proyecto paralelo para entrar en el aprendizaje, pero fue divertido hacerlo de todos modos. Puedes verlo en GrumpyGrandpa.net.

Según mi experiencia, esto es lo que recomendaría.

  1. Necesita una Mac / MacBook para poder ejecutar Xcode. Recomendaría un MacBook 2015 o más reciente para fines de longevidad, pero es posible que pueda sobrevivir con algo un poco más antiguo. Solo asegúrese de que pueda ejecutar MacOS High Sierra para que sepa que es capaz de ejecutar todo el último software de Apple, incluido Xcode. Más detalles sobre los requisitos técnicos para High Sierra aquí https://support.apple.com/kb/SP7
  2. Necesitará Xcode para desarrollar aplicaciones. Puede descargar Xcode en Xcode – Apple Developer. No se registre para el programa Desarrollador pagado hasta que esté listo para lanzar su primera aplicación. Puede descargar Xcode para hacer su desarrollo antes de pagar la tarifa anual. Una vez que su aplicación esté lista, deberá inscribirse en el Programa de Desarrolladores de Apple como individuo o como corporación si tiene una empresa registrada. Una vez que se haya registrado y pagado, tendrá algunos formularios que debe hacer con Apple antes de poder cargar su aplicación.
  3. Antes de comenzar a ingresar al código y a la capacitación de Swift, trabaje en DISEÑAR su primera aplicación. Piense en la idea de lo que desea construir y luego comience a trabajar en las especificaciones de qué controles o características se requerirán. Descargue otras aplicaciones similares y revíselas en detalle y tome notas sobre lo que le gusta, lo que cree que podría mejorar, las características que faltan que incluirá, etc. y forme su propia idea única. Puede parecer contrario a la intuición diseñar una aplicación antes de tener una pista sobre la programación de Swift, pero el diseño de la aplicación es la mitad de la batalla. Realice una búsqueda de imágenes de Google en la “plantilla de estructura alámbrica de iPhone” y descargue su plantilla favorita para comenzar a mapear su idea. Esto te motivará a seguir los siguientes pasos para aprender a codificar.
  4. Comience con algunos tutoriales GRATUITOS y trabaje en ellos antes de comenzar un curso más completo. Me gustan los tutoriales de CodeWithChris en YouTube:

Una vez que hayas terminado los tutoriales gratuitos, Chris tiene un curso más detallado que puedes comprar. No tengo dudas de que sería un buen curso, pero había elegido pasar por otro diferente en Udemy porque más tarde encontré las cosas de Chris. De todos modos, pasarás mucho tiempo en las “clases”, así que elige un curso que tenga un instructor que puedas escuchar durante largos períodos de tiempo.

En este punto, debe decidir si desea codificar todo usted mismo o si desea pagarle a otra persona para que codifique su aplicación. Tiene las especificaciones, el diseño, etc., por lo que fácilmente podría pagarle a alguien de $ 1000 a $ 1500 para que codifique su aplicación si lo prefiere. Pero estamos hablando de autodesarrollo, así que en este punto, es hora de saltar a Xcode y ponerse a trabajar.

Si te quedas atascado … no estás solo … Google es tu amigo para encontrar respuestas a cualquier problema que puedas tener. StackOverflow también es otro gran sitio para obtener ayuda. Además, si se ha inscrito en un curso en línea, probablemente también tenga una forma de pedir ayuda a otros estudiantes o al instructor.

En el desarrollo de mi aplicación, necesitaba algunas cosas … necesitaba un artista de gráficos para hacer los gráficos … lo hice yo mismo, pero me pareció útil conseguir a alguien más experto que yo en PhotoShop para crear las imágenes terminadas. Use Upwork.com o Freelancer.com para encontrar talento de todo el mundo. Te advierto que cuando publiques lo que quieras, puedes obtener más de 30–40 respuestas para examinar. Sea específico con lo que necesita y tenga un cierto “preguntar” en su puesto de trabajo. Cualquier persona que no responda a su pregunta (“envíeme al menos 5 ejemplos de trabajos anteriores que haya realizado”) lo descarto inmediatamente. A veces las personas simplemente envían respuestas generales a las ofertas de trabajo, así que así es como las separo y me concentro en los candidatos más orientados a los detalles.

Además de eso, necesitaba un Actor de Voz para hacer las voces de mi aplicación que mi esposa realmente encontró a través de una búsqueda en Google. Por último, necesitaba un programador que me ayudara con parte del código cuando me atascaba. Lo hice la mayor parte yo mismo, pero con un trabajo de tiempo completo, una familia joven y tratando de equilibrarlo todo, decidí que valía la pena gastar unos cientos de dólares para obtener ayuda adicional (compras en la aplicación).

Una vez que la aplicación estuvo lista, me inscribí en el Programa de Desarrolladores de Apple, pagué la tarifa anual y subí la aplicación para lanzarla al mundo.

Esto es aproximadamente la mitad de la batalla … Una vez que se haya lanzado su aplicación, o antes del lanzamiento, necesita un buen plan de marketing sobre cómo promocionará la aplicación. Crea un sitio web que muestre tu aplicación. Si puedes hacer un video aún mejor. Incluya el video en la App Store y en YouTube. Simplemente poner su aplicación en la App Store NO es suficiente. ¿Usarás anuncios de Facebook? Publicaciones en el foro? Instagram? ¿Gorjeo? Apple Ads o alguna otra red publicitaria? ¿Cómo ganarás tracción? (Sugerencia: probablemente todo lo anterior) Tenga un presupuesto e investigue sobre las mejores formas de promocionar su aplicación. Esto es lo que impulsará el éxito de su aplicación después de su lanzamiento.

Por último, diviértete. Es posible que al principio no te sientas seguro y algunas de ellas serán nuevas habilidades que debes adquirir, pero si estás lo suficientemente motivado y sigues así, encontrarás el camino. Hay mucho que aprender, pero no estás solo, así que disfruta del viaje.

¡Espero que encuentres esto útil y lo mejor para desarrollar tu primera aplicación!

Bueno, yo mismo he estado en una situación similar antes.

Yo también tomé el curso de Stanford para desarrollar aplicaciones iOS con Swift. Si ha visto cuidadosamente la primera clase, el profesor afirma claramente que el curso es muy pesado y que necesita ser bueno en la programación orientada a objetos en particular y en la programación en general. Por lo tanto, de ninguna manera es un curso completo para principiantes . Además, la metodología de enseñanza es adecuada para los estudiantes de Stanford. Es por eso que el profesor primero explica los conceptos y la sintaxis de la conferencia y luego da todos los códigos / ejemplos de una vez, en lugar de dar códigos / ejemplos tema por tema.

Y, por último, puedo estar equivocado en esto, pero la tercera conferencia (por lo que recuerdo) se trata de hacer una calculadora, que también almacena el historial de sus operaciones. Y esto se logra utilizando la estructura de datos de la pila. Personalmente, encontré que este tema tenía un nivel de dificultad considerablemente más alto que los otros, antes y después. Entonces, con toda probabilidad, no le resulta difícil iOS, está encontrando que la implementación y el trabajo de las pilas en rápido son difíciles . Y eso es porque no es una clase de estructuras de datos.

Por lo tanto, idealmente, debe ir con algo que sea más fácil, suponiendo en este punto que su objetivo principal es aprender el desarrollo de iOS y no la programación en general. Si ese es el caso, puede consultar mi respuesta sobre los recursos para aprender iOS La respuesta de Rohit Gurnani a ¿Cuál es la ruta correcta para comenzar el desarrollo de iOS ahora que Swift es de código abierto? .

La otra opción es seguir el curso y fingir que lo tiene, con la esperanza de que eventualmente lo obtenga. Habiendo tomado este curso personalmente, lo que recomiendo es saltar a otro recurso . La razón principal es que este curso supone una gran cantidad de lectura de fondo y escritura de código por parte de los estudiantes por su cuenta. Se supone que las conferencias no deben ser vistas en exceso. En realidad, se llevan a cabo 1 conferencia por semana, y se supone que los estudiantes deben venir preparados para los temas y presentar su código cada semana. Por lo tanto, es una especie de curso guiado, no una enseñanza per se.

Te aconsejo que sigas el curso solo si estás preparado para hacer un esfuerzo adicional y piensas que solo necesitas una dirección para seguir adelante. Si cree que necesitará más mano, entonces eche un vistazo a los otros recursos.

Una hoja de ruta? ¿Te graduaste con un título de CS y le estás pidiendo a alguien que te alimente con una cuchara exactamente lo que debes hacer? Sin ofender, pero esta no es la creación de un ingeniero en absoluto. Esto es especialmente cierto en el desarrollo de iOS, donde muchas veces intentará implementar un control personalizado que hizo la aplicación X. Deberá poder hacer su propia investigación y confiar en su propia intuición sobre cómo recrearlo o incluso cómo mejorarlo. No será un buen ingeniero esperando que se le dé todo de esta manera.

Mis dos centavos:

1) Rancho Ray Wenderlich y Big Nerd Book. Omita los cursos en línea: ya se graduó con un título de CS. Ahora debe ser independiente del lenguaje y solo debe aprender la sintaxis. Desde aquí puede sumergirse en libros específicos basados ​​en si desea CoreGraphics, CoreData, CoreAnimation, etc.

2) Swift es decepcionante y decepcionante ahora. Todo lo que puede hacer en Obj-C se puede hacer en Swift utilizando nombres de métodos muy similares. Swift todavía está en beta e incluso puede romper su compilación entre diferentes versiones de XCode. Debido a que es tan nuevo, la mayoría de los lugares ni siquiera usan Swift. Aprender Obj-C es mejor por ahora ya que aprender Swift una vez que tienes experiencia solo debería tomar una o dos semanas. Aprender rápido antes de Obj-C es mucho peor porque solo hay una fracción de tutoriales / libros / recursos disponibles.

3) Aprenda a poder hacer sus propios mapas y tutorías. Como graduado de CS, ya debe conocer el ejercicio: crear una cartera, obtener un trabajo como pasante / junior para obtener experiencia y trabajar desde allí.

Cuando me uní al equipo de iOS en mi empresa, hice lo siguiente:

  1. Traté de entender cuál es la diferencia entre el desarrollo de aplicaciones y el desarrollo web.
  2. Pasó por la sintaxis básica del objetivo C.
  3. Conceptos básicos de Xcode.
  4. Tomó un pequeño enunciado del problema y creó una aplicación usando guiones gráficos (Ej .: crear un cronómetro, crear vistas simples)
  5. Intenta codificar la aplicación por completo sin usar guiones gráficos.
  6. Tomé la base de código de mi empresa, usé muchos puntos de interrupción e intenté entender la arquitectura de la aplicación.
  7. No perdió mucho tiempo en comprender las cosas, sino que comenzó a desarrollar algunas características pequeñas que aconseja un ingeniero superior del equipo. Conocí muchas cosas mientras desarrollaba la función.
  8. Cada vez que estoy atascado, navego en línea y obtengo la solución para eso. No utilicé simplemente el código, sino que intenté entender el código antes de usarlo.

Consejos:

  1. Intente comprender claramente cómo funciona la configuración del sistema. Cómo se crean los perfiles de aprovisionamiento. Cómo se realiza la firma del código. Comprender diferentes ambientes. Comprender la configuración básica de Xcode.
  2. Intenta codificar toda la aplicación en lugar de usar guiones gráficos. Porque, después de un tiempo de codificación, cuando intenté usar guiones gráficos no fue cómodo. La codificación de la interfaz de usuario dio mucha flexibilidad que el uso de guiones gráficos.

No estoy seguro de si el desarrollo de iOS es una buena carrera, pero puedo asegurar que es divertido aprenderlo. No puedo proporcionar enlaces web útiles, pero siempre puede buscar el enunciado del problema y aterrizar en la página correcta.

Es bueno que sientas la necesidad de mejorar. Dado lo que has hecho, deberías sentirte bastante bien al respecto. Dirigí una reunión de codificadores de iOS durante dos años. Casi todos los que asistieron eran programadores mayores y experimentados. Ninguno de ellos pudo hacer lo que has hecho.

Comencé el grupo para ayudar a las personas interesadas en mejorar. Estoy seguro de que tiene grupos en su área que se reúnen regularmente. Asistir a unos pocos hará una gran diferencia.

Para aprender mejor por su cuenta, intente ver videos en lugar de solo buscar en Google. La mayoría de los videos de programación son mucho mejores que simplemente leer o piratear o incluso hablar con expertos. Los videos WWDC disponibles con su licencia de Desarrolladores de Apple son bastante buenos. Están en un área protegida de iTunes a la que puede acceder desde su página de desarrollador.

Con la necesidad de usar un BaaS en la mayoría de las aplicaciones ahora, escribir aplicaciones es mucho más complicado que en el pasado. Aprender el lado del servidor y la programación móvil juntos es una tarea desalentadora. Si puede encontrar un compañero o un mentor, será de gran ayuda.

Su mayor activo es el deseo de mejorar y perseverar, lo cual es bastante raro, lo crea o no.

La respuesta corta es esta:

Compre una Mac, instale Xcode y aprenda rápidamente.

La verdadera pregunta que entra en juego aquí es esta: ¿tiene alguna experiencia previa en programación? Si es así, Swift probablemente no será demasiado difícil para ti. Con un poco de práctica, puede seguir los 3 pasos anteriores y seguir su camino. La agencia con la que trabajo, Touchtap, es conocida por el desarrollo nativo de iOS y Android, pero la mayoría de nosotros comenzamos con experiencia previa en programación.

Si no tienes experiencia previa en programación, entonces podría tomar un poco más de esfuerzo, pero ciertamente es factible. Lo primero que haría es los pasos uno y dos (comprar una Mac e instalar Xcode). También debe comenzar a familiarizarse con iOS. Comience a conocer los entresijos de cómo funciona y qué cosas le gustan y qué no le gustan de cómo funcionan las aplicaciones.

Luego encuentre un método de aprendizaje. Los campamentos de arranque de codificación están disponibles si tiene tiempo, pero también hay TONELADAS de material disponibles en línea de forma gratuita o muy barata. Team Treehouse y Code Academy son 2 de los grandes nombres. La clave es encontrar un método del que pueda aprender y seguirlo.

Una vez que haya establecido las bases, comience a construir sus propios proyectos. Esto es clave en el desarrollo: usar lo que aprende para construir algo que le apasiona. Es una excelente manera de agudizar sus habilidades y enfrentar problemas del mundo real.

¡Buena suerte en tu viaje!

La razón por la que la mayoría de estas empresas quieren al menos 2 a 3 años de experiencia es porque un desarrollador de iOS necesita un amplio conocimiento. iOS es vasto. Hay demasiadas cosas que suceden en una instancia determinada y hacer que una aplicación requiera partes de cada rincón de iOS. No puede simplemente tener una comprensión o algunos conceptos aquí y allá y crear una aplicación.

Por lo tanto, debe demostrar a la compañía que tiene un conocimiento sólido y que está expuesto a una gran cantidad de API presentes en el entorno. Para hacerlo, sugeriría:

  1. Crea tus propias aplicaciones. Luego, suéltelos en la App Store. Créeme, puedes hacerlo. Escogí iOS por mi cuenta y lancé dos aplicaciones en 6 meses sin conocimiento previo de programación. Y eso también mientras tenía un trabajo de analista a tiempo completo.
  2. Lea todo lo que pueda de los blogs y aumente su conocimiento. Ve a Ray Wenderlich y comienza a leer los artículos para empezar.
  3. Mire videos de WWDC y póngase cómodo leyendo Apple Docs.
  4. Práctica práctica práctica. Primero, incluso las cosas básicas como las vistas de tabla se sentirán extrañas y difíciles, pero si practicas crecerás muy rápido y aprenderás de primera mano.
  5. Solicite trabajos (tantos como pueda) y prepárese con las preguntas genéricas de entrevista para desarrolladores de iOS.
  6. Finalmente, si puede hacer simultáneamente un blog de lo que sea que esté negociando a diario, le ayudará a largo plazo.

No puedo decir que esta sea una manera segura de disparar, pero definitivamente va a ayudar. Espero que consigas el trabajo que deseas. Todo lo mejor :).

Obtenga iMac con memoria de 16 gb.
Obtenga xCode y compre una licencia de desarrollador de Apple.
Encuentra tutoriales de Swift en YouTube:
Ray Wenderlich
SoSoSwift
Otro veloz
Lea las pautas de diseño de las manzanas y los manuales rápidos.
Replica los tutoriales.
Use StackOverflow.com para todos los mensajes de error y otros problemas que encuentre.
Encuentra tu propio proyecto.
Código, código y código!
Únase a una comunidad de programadores.

Diviértete y buena suerte 🙂

En el pasado tuve un iPod nano mientras asistía a mi último año de universidad, me encantó, y había un puerto de linux llamado Podzilla, lo usé por un tiempo e incluso creé un reproductor de video para su pequeño pantalla, escrita en C.

Desafortunadamente lo olvidé en mis pantalones, mis pantalones entraron en la lavadora y murió.

Iba a comprar otro nano, pero mi hermano me dijo que podías comprar un iPod touch (la diferencia no era demasiado). No estaba demasiado entusiasmado con eso, y pensé que era demasiado grande, pero unos días después vi a un chico en clase con uno, no podía creer lo que veía, lo encontré hermoso, y luego encontré la cosa. conectado a WiFi, así que decidí comprar un iPod touch 2.

Llegó con iOS 2.2 e inmediatamente me enamoré, después de unos meses descubrí que realmente podía desarrollarse para la cosa, no estaba demasiado entusiasmado con Obj-C, pero decidí que lo aprendería de todos modos, en el momento en que estaba desarrollando principalmente JSP, pero había estado usando C durante 8 años más o menos en pequeños proyectos.

Entonces, aparte de la sintaxis, el lenguaje se sentía familiar. Una cosa que aprecio de mi universidad es que no me proporcionaron todo, nos dijeron que busquemos e investiguemos para resolver nuestros problemas, y creo que es una buena práctica, ya que en 5 o incluso 3 años las cosas podrían cambiar, la educación formal simplemente no es tan rápida para aceptar el cambio.

Si planeas hacer una carrera en desarrollo, te sugiero que te acostumbres, lo que sabes ahora podría no ser útil en 3 años, tienes que mantenerte al día.

Primero y principal – TRABAJO . Tendrá que dedicar mucho tiempo: a altas horas de la noche y fines de semana, aprendiendo y perfeccionando su oficio. Incluso después de que esté familiarizado con Objective C y Swift, necesitará pasar mucho tiempo para mantenerse al día con todas las nuevas versiones de iOS que Apple lanza.

Una vez que haya aceptado la cantidad de tiempo que tomará y esté dispuesto a saltar con los dos pies, entonces podemos hablar sobre por qué quiere ser un desarrollador de iOS. Algunas personas suponen que crearán una aplicación y verán cómo se acumula el dinero. Por lo general, este no es el caso. Si bien la programación puede ser una carrera lucrativa, la posibilidad de desarrollar el próximo Angry Birds es bastante escasa en estos días. Las aplicaciones que generaron la mayor cantidad de rumores no fueron la primera ronda. Esos programadores pasaron MUCHO tiempo construyendo múltiples aplicaciones que fallaron por completo o simplemente nunca se dieron cuenta. Como con cualquier industria, habrá años de ideas equivocadas antes de que llegue la correcta.

Así que hablemos de lo que es REALISTA. Swift actualmente tiene una tendencia de $ 100.7K por año en YouWorth. Ese es definitivamente un número realista para un programador Swift con poca experiencia. Si realmente quieres aprender a ser un desarrollador de iOS, creo que deberías comenzar a aprender Swift de inmediato y establecer algunos objetivos realistas. No esperes convertirte en un desarrollador de iOS de la noche a la mañana, pero después de un tiempo darás la vuelta y verás cuán lejos has llegado. Asegúrese de que su motivación no esté fuera de lugar y disfrutará lo que hace también.

Salario rápido en Estados Unidos

La información salarial anterior se obtuvo de YouWorth. YouWorth es una aplicación móvil gratuita para iOS y Android que rastrea datos de sueldos rápidos. No solo soy un campeón del producto, sino que lo uso yo mismo. La aplicación permite a cualquier persona importar habilidades de LinkedIn y rastrear su valor en el mercado laboral a lo largo del tiempo. También me notifican si hay un cambio en las habilidades que se están viendo.

More Interesting

Todas mis notas del iPad desaparecieron después de que la aplicación se bloqueó dos veces. También tenía muy poco espacio de almacenamiento en ese momento si eso marca la diferencia. ¿Cómo puedo recuperar mis notas? No uso iCloud o iTunes para hacer una copia de seguridad de mi iPad.

Cómo degradar iOS 9.3.5 en un iPad 2 para poder liberarlo

¿Debo actualizar mi iPhone 7 a iOS 11?

¿Qué idiomas necesito aprender para crear una aplicación de videollamada en Windows, Mac, Android e iOS?

¿Por qué obtengo una pantalla negra cuando uso FaceTime?

Si soy administrador de una página de Facebook, ¿cómo puedo comentar una publicación usando mi propia identidad en lugar de la identidad de la página en Facebook para iOS?

¿Puedes sincronizar tu colección de música a través de Apple Music y transmitirla a tu iPhone?

¿Los dispositivos móviles que ejecutan software que no sea Apple iOS almacenan los datos de ubicación del usuario de manera similar?

¿Cuál es la forma más fácil de cambiar el tono de llamada en un iPhone 4?

¿Cuáles son las características más recientes de Apple iOS 11?

¿La programación en C es eficiente para crear aplicaciones para iOS?

¿Por qué Apple no permite que otras compañías usen iOS?

¿Por qué no puede Microsoft hacer un sistema operativo móvil popular como iOS de Apple y Android de Google?

Cómo arreglar un iPhone deshabilitado después de ingresar una contraseña incorrecta

¿Cuáles son las mayores diferencias entre Apple IOS y Linux?