A dónde ir a continuación

Has aprendido mucho en las últimas cinco semanas, saltamontes, e incluso puedes sentirte un poco abrumado en este momento. Me gustaría dejarte con algunos consejos y un montón de recursos para mantenerte en el buen camino para convertirte en un desarrollador de iOS competente..

Cosas para considerar

A pesar de que 2007 parece ser ayer, el espacio móvil, y iOS en particular, ha crecido a un ritmo increíble. Es difícil imaginar el panorama móvil sin el iPhone, el iPad y el iPod Touch. Como resultado del notable crecimiento y la popularidad de la plataforma iOS, no hay escasez de libros, videos, cursos y blogs que lo guíen en su búsqueda para convertirse en un desarrollador iOS capacitado..

El material que cubrimos en esta serie debería haberle dado una buena comprensión de la plataforma iOS desde la perspectiva de un desarrollador. El primer consejo que me gustaría darte es que continúes construyendo aplicaciones iOS. No espere hasta que crea que sabe lo suficiente para comenzar a crear esa primera aplicación iOS real. Aprenderá más creando pequeñas aplicaciones y encontrando soluciones a los problemas que encuentra a medida que avanza. Al final, la programación tiene que ver con resolver problemas. Me encuentro creando varias aplicaciones cada semana. Esto no significa que cada aplicación sea digna de publicación en la App Store, sino todo lo contrario. Empiezo por aislar un problema específico y bien definido que forma parte de un proyecto más grande. Entonces creo un nuevo proyecto de iOS que se enfoca en resolver ese problema. Cuando he encontrado e implementado una solución al problema, refino la solución mediante varios pasos de refactorización para prepararla para la integración en el proyecto más grande. Al mismo tiempo, he creado un componente reutilizable para su uso posterior. Al centrarse en la reutilización, es menos probable que escriba el código spaghetti y es más probable que se ahorre tiempo en proyectos futuros..

Este enfoque también es ideal para explorar nuevos marcos o para probar una nueva biblioteca de código abierto con la que se ha topado. Durante esta serie, hemos creado una serie de proyectos de iOS. Con cada nuevo proyecto, aprendimos algo nuevo y, a lo largo del camino, nos familiarizamos cada vez más con Xcode. Familiarizarse con su entorno de desarrollo es otro elemento clave del desarrollo de iOS.

Mi segundo consejo es evitar copiar y pegar fragmentos de código que encuentre en la web. A menos que entiendas los fragmentos que estás copiando, a la larga no te beneficiarás. Claro, puede resolver temporalmente un problema con el que estás luchando, pero al usar fragmentos de código aleatorios que no entiendes, acumularás deuda técnica. Esto no significa que no deba incluir bibliotecas bien mantenidas en sus proyectos, como AFNetworking o Magical Record. Tampoco significa que deba conocer todos los detalles de implementación de dichas bibliotecas. Si se enfrenta a un problema que puede resolver usted mismo gastando una o dos horas para codificar una solución, entonces ese es un tiempo bien empleado. El desarrollo de software no se trata solo de velocidad y entrega de resultados. A nivel personal, el desarrollo de software consiste en mejorar en lo que haces, en la programación, y no te conviertes en un mejor programador al copiar y pegar partes de código que no comprendes completamente. No hay atajos para convertirse en un gran programador..

Envato Tuts+

Antes de sumergirme en la lista de recursos útiles, quiero mencionar que Envato Tuts + ha existido durante muchos años y ha creado una impresionante colección de tutoriales de alta calidad sobre el desarrollo de iOS. Cerca de 200 tutoriales sobre Tuts + están dirigidos específicamente al desarrollo de iOS, desde principiantes hasta temas avanzados.

Dónde encontrar ayuda?

Foros de desarrolladores de Apple

Si eres un desarrollador de iOS registrado, entonces tienes acceso a los foros de desarrolladores de Apple. Los foros de desarrolladores de Apple no solo están activos y están llenos de desarrolladores que conocen sus cosas, el marco y los ingenieros de DTS (Soporte técnico para desarrolladores) mantienen y supervisan los foros, que a veces pueden ahorrarle un día o ahorrarle un día.

Google al rescate ... o es desbordamiento de pila?

Cuando te encuentres usando Google para encontrar una respuesta a una pregunta de programación o una solución a un problema que estás teniendo, es probable que Google te dirija a Desbordamiento de pila. Es justo decir que Stack Overflow revolucionó el desarrollo de software y la comunidad de desarrolladores. Stack Overflow es un gran lugar para hacer preguntas, pero también para devolverle a la comunidad ayudando a otros. No importa con qué idioma trabaje o en qué plataforma desarrolle el software, es probable que Stack Overflow tenga una comunidad vibrante centrada en sus intereses..

GitHub

En los últimos años, la codificación social se ha vuelto muy popular y GitHub es sin duda uno de los motores de esta tendencia. Dado que es nuevo en el desarrollo de iOS, es probable que no pueda contribuir a proyectos de código abierto (iOS) todavía. Sin embargo, nada le impide explorar algunos proyectos de código abierto y explorar su código fuente para ver cómo se pueden hacer ciertas cosas. Si desea acelerar su aprendizaje explorando el código escrito por otros desarrolladores, entonces es clave elegir un proyecto que esté bien mantenido y en desarrollo activo..

Libros

Programación en C

Una buena comprensión del lenguaje C es importante para todos los desarrolladores de Cocoa, pero te darás cuenta de que puedes llegar muy lejos si solo conoces los conceptos básicos del lenguaje C. Sin embargo, a medida que pase el tiempo, encontrará piezas de código que no entenderá completamente a menos que profundice en el lenguaje C. La guía definitiva para aprender C es el libro escrito por Brian Kernighan y Dennis Ritchie, The C Programming Language. Como recordará del artículo sobre el aprendizaje de C, Dennis Ritchie fue uno de los creadores del lenguaje C. ¿Qué mejor manera de aprender C de la persona que ayudó a crear el lenguaje? Otro gran libro para aprender C es Learn C on the Mac de Dave Mark.

C objetivo

Aunque Apple proporciona una guía completa del lenguaje de programación Objective-C (Programación Orientada a Objetos con Objective-C), no es ideal para personas que son nuevas en Objective-C y ciertamente no para personas nuevas en C. Uno de los Los mejores libros sobre Objective-C es el libro escrito por Stephen Kochan, Programación en Objective-C. Asegúrese de elegir la edición más reciente, que también trata sobre Objective-C 2.0.

También es de destacar que, en 2010, Dan Walker escribió una serie popular sobre Tuts + sobre el aprendizaje de Objective-C. Si quieres ampliar tus conocimientos de Objective-C, entonces te animo a que eches un vistazo a la serie de Dan..

Más libros

Apress y O'Reilly Media son dos editores que se conocen por publicar libros de alta calidad sobre desarrollo de iOS y desarrollo en general. Dos publicaciones excelentes de Apress son: Desarrollo inicial de iOS 7 y Más desarrollo de iOS 6. Ambas publicaciones se actualizan con cada nueva versión de iOS.

Uno de los primeros libros escritos sobre el desarrollo de Cocoa es Cocoa Programming para Mac OS X. Este libro está escrito y actualizado por Aaron Hillegass, fundador de Big Nerd Ranch. Aaron es muy conocido en la comunidad de Cocoa y muchos desarrolladores han aprendido el desarrollo de Cocoa a través de sus libros, incluido yo mismo..

Videos

WWDC

La Conferencia Mundial de Desarrolladores de Apple (WWDC) es el punto culminante del año para muchos desarrolladores de Cocoa. Cada presentación realizada en WWDC se registra y está disponible al día siguiente para los desarrolladores de iOS y Mac registrados. La colección de videos se remonta a la WWDC 2010, por lo que tiene un montón de material para revisar..

iTunes U

En los últimos años, varios colegios y universidades han comenzado a enseñar el desarrollo de iOS. Algunos de estos cursos están disponibles a través del programa iTunes U de Apple de forma gratuita. El curso más conocido y de más larga duración es CS193p en la Universidad de Standford. En el Colegio Técnico del Área de Madison, Brad Larson enseña Desarrollo Avanzado de iPhone, que también cubre algunos temas más avanzados. Jan Borchers, de la Universidad de Aachen, da otro curso sobre el desarrollo del iPhone..

Blogs

No debería sorprenderte cuando te digo que hay cientos, si no miles, de blogs dedicados al desarrollo de iOS. He enumerado algunos de mis blogs favoritos a continuación, pero hay muchos más por descubrir..

  • Jeff LaMarcheEl blog de 's es uno de los blogs más antiguos sobre desarrollo de cacao que conozco. Jeff ha escrito varios libros sobre desarrollo de iOS y realmente sabe lo que hace..
  • Cacao con amor Es un blog mantenido por Matt Gallagher. No llamaría la lectura ligera de las publicaciones de Matt de ninguna manera. La mayoría de los artículos que escribe son profundos, están llenos de información y están muy bien escritos..
  • El cacao es mi novia Es otra fuente de grandes artículos en profundidad. Los escritores de Cocoa Is My Girlfriend son Marcus Zarra, Matt Long, Fraser Hess y Saul Mora (creador de Magical Record)..
  • Aunque Mike AshEl blog de 's no es el blog más bonito de la web, está lleno de gran contenido. Sus artículos de preguntas y respuestas del viernes en particular son una alegría para leer..
  • El blog de Ole Begemann proporciona artículos nuevos y bien escritos sobre el desarrollo de iOS y temas relacionados.
  • NSHipster Es un blog más joven mantenido por Mattt Thompson. Actualmente, Mattt trabaja en Panic y es uno de los creadores de AFNetworking. El lema de NSHipster dice "... un diario de los bits pasados ​​por alto en Objective-C y Cocoa ...", que resume muy bien el contenido de NSHipster..

Boletines de noticias

No hace mucho tiempo, Dave Verwer comenzó con iOS Dev Weekly, un boletín semanal sobre el desarrollo de iOS. Si desea recibir una lista cuidadosamente seleccionada de enlaces relacionados con el desarrollo de iOS, puedo recomendar altamente el boletín de Dave. ¿Ya mencioné que es gratis??

A quién seguir?

Twitter es un medio excelente para mantenerse actualizado sobre el desarrollo de iOS y OS X. He recopilado una breve lista de personas en la twittersphere que quizás desee seguir.

  • Matt Gemmell
  • Aaron Hillegass
  • Steve Scott
  • Matt Gallagher
  • Michael Jurewitz
  • Dave Mark
  • Marco Arment
  • Wil Shipley
  • Fraser Speirs
  • Daniel Jalkut
  • Manton Reece
  • Mattt Thompson
  • Mike Lee
  • Craig Hockenberry

Finalmente, puedes seguirme en Twitter también. No dude en enviarme un mensaje si tiene una pregunta o si solo desea saludarme..

Conclusión

Espero que hayas disfrutado esta serie sobre desarrollo de iOS tanto como yo disfruté armándola. Si tiene alguna pregunta, no dude en dejar un comentario o enviarme un mensaje de Twitter. Las sugerencias para futuros temas también se pueden dejar en los comentarios..