Quiero hacer una aplicación para iOS. ¿Donde debería empezar?

Depende de cuánto ya sepa sobre el desarrollo en general. ¿Has hecho desarrollo web o has estudiado desarrollo? ¿Cuánto sabes sobre el software iOS? ¿Cuánto sabes sobre software y tecnología en general? ¿Qué tan familiarizado está con el iPad, iPhone e iTouch?

La programación es un tema bastante complejo, que las personas pasan años dominando, y pasan el resto de sus vidas manteniéndose al día. Sin embargo, eso no quiere decir que no sea gratificante, porque lo es.

Aquí hay un proceso básico para el desarrollo, suponiendo que esté comenzando sin conocimientos de desarrollo. Si está comenzando con algún conocimiento, puede pasar a la parte apropiada.

  1. Obtenga libros: obtenga un libro sobre desarrollo de iPhone, un libro sobre conceptos básicos de programación y un libro sobre un lenguaje de programación más simple. Algunos lenguajes fáciles para comenzar son HTML, JavaScript, C #, Python y Game Maker. De todos ellos, recomendaría JavaScript y HTML juntos. Esos dos idiomas se usan en el desarrollo de páginas web y hacen pruebas muy rápidas. Puede aprender algunos de los conceptos básicos de programación muy rápidamente a través de JavaScript.
  2. Obtenga un iDevice: si no tiene un iPhone, iPad o iTouch, obtenga al menos uno de ellos. Lo necesitará para probar y lo necesitará para familiarizarse con la plataforma.
  3. Obtenga una Mac: deberá tener acceso a una Mac. Si desea desarrollar su aplicación desde cero, probablemente tendrá que comprar una Mac porque debe desarrollarla. Si no lo hace, al menos lo necesitará para el proceso de compilación final.
  4. Pruebe aplicaciones buenas y similares: busque y descargue / compre tantas aplicaciones similares a las que desea hacer como sea posible. Compre / descargue algunas de las aplicaciones más populares en la tienda de aplicaciones. Use / juegue con estas aplicaciones hasta que sienta que tiene una buena idea de la plataforma iPhone / iPad.
  5. Determine lo que debe hacerse: determine cuánto trabajo puede hacer usted mismo y cuánto trabajo debe hacerse. ¿Puedes hacer el arte? ¿Habrá alguna obra de arte especial, o solo el sistema operativo predeterminado? Necesitas musica Determine si necesita ayuda adicional y determine si tiene amigos o conexiones a los que pueda llamar para hacer ese trabajo o si tendrá que pagarlo. Además, ¿hay un servidor / servidor que necesitará su aplicación? Si es así, tendrá que desarrollar ese fin usted mismo o contratar a otra persona para que lo haga. El arte y la música pueden venir después, pero tenlo en cuenta por ahora.
  6. Siga las lecciones y tutoriales: siga todos los tutoriales y lecciones que pueda. Estos pueden provenir de Internet o de sus libros. Querrás comenzar con lo básico sin importar qué. (Lo enumeraré en breve). Y luego, una vez que sienta que comprende cómodamente los conceptos básicos, querrá pasar a conceptos más específicos de su aplicación.
  7. Lea la documentación de Apple: lea la documentación del iPhone / iPad de Apple; Especialmente las Pautas de interfaz humana y leer sobre el proceso de envío y publicación.
  8. Diseñe su aplicación: no tiene que parecer elegante, pero es una buena idea dibujar los diseños de pantalla y escribir cómo funcionarán las cosas. Te encontrarás descubriendo errores lógicos (por ejemplo, cuando presionas este botón, X sucederá. Oh, espera, pero X aún no puede suceder porque Y aún no ha sucedido. Tendré que encontrar una manera de hacer que el usuario espere hasta Y ha sucedido. Etc. etc.)
  9. Desarrollar desde cero? Determine si desea programar su aplicación / juego desde cero o usar una herramienta o motor. Si eres un novato en programación, usar una herramienta podría ser una gran idea. Hay muchos motores y herramientas por ahí. Investigue un poco y vea si ya existe una herramienta o un motor de buena reputación que pueda satisfacer sus necesidades. Si está creando un juego, hay muchas herramientas de desarrollo que podría usar, incluyendo: Game Maker, Unity, Unreal Engine, Torque Game Builder. Algunos de estos incluso podrían usarse para aplicaciones normales. Un buen motor del que he oído hablar de los juegos es Cocos2D, que podría evitar que tengas que reinventar la rueda solo para comenzar a jugar.
  10. Primero, cree la aplicación en un lenguaje más simple: si es nuevo en la programación: intente crear su aplicación o algún otro proyecto pequeño en el lenguaje simple que aprendió anteriormente. No tiene que hacer todo, pero esta es una buena oportunidad para hacer algo basado en sus propias ideas y diseños y ver si incluso puede hacerlo. (También tenga en cuenta que puede programar la aplicación como una página web y abrirla desde su dispositivo, ¡HTML / Javascript sería una excelente combinación para probar!)
  11. ¡Comienza a desarrollar! ¡Comience a trabajar en su aplicación en la herramienta que elija! Si ha decidido crear la aplicación desde cero, deberá descargar XCode. De lo contrario, descargue las herramientas y los motores que ha elegido utilizar.
  12. Desarrollar, depurar, reparar. No te rindas Habrá mucho trabajo. Mucha depuración y mucha frustración. No tenga miedo de hacer preguntas y buscar en Internet. Recuerde sus libros, y si no puede encontrar la respuesta allí, hay toneladas de desarrolladores que comparten sus conocimientos en línea. Especialmente stackoverflow. Genial, excelente recurso. Si está utilizando XCode, Apple tiene foros de desarrolladores para verificar. Si está utilizando una herramienta o motor, la mayoría de ellos tienen un foro donde puede hacer preguntas.
  13. Prueba usando el simulador: puedes probar sin un iDevice por ahora, usando el simulador en tu Mac.
  14. Pruebe con un iDevice: obtenga una licencia de desarrollador de Apple para el desarrollo de iOS (https://developer.apple.com/). Una vez que tenga uno, puede probar en iDevices reales. Deberá asegurarse de probar realmente su aplicación en estos dispositivos porque el rendimiento y el comportamiento pueden variar, a veces significativamente, entre el simulador y el dispositivo en sí.
  15. Revise antes de enviar : revise las pautas de envío de la tienda de aplicaciones y asegúrese de que su aplicación tenga los bits adecuados. Necesitará cargar ilustraciones de la pantalla, íconos de tamaño variable, una descripción, captura de pantalla, etc. Asegúrese de que se cumplan todos los requisitos. ¡Y asegúrese de que la aplicación se ejecute correctamente!
  16. Enviar y volver a enviar: envíe su aplicación. Prepárate para que Apple lo rechace, porque sucede. Si se rechaza, no suele ser permanente. Siga las pautas que proporcionan en el rechazo y vuelva a enviar

Conceptos básicos de programación que querrás cubrir
Esta lista ciertamente no es definitiva, pero estas son algunas de las cosas más básicas que querrás entender antes de sumergirte en el desarrollo de iPhone. (Ordenado aproximadamente por el orden en que querrá aprenderlos)

  • Qué es un sistema operativo
  • Que es un programa
  • Conceptos básicos de cómo funciona una computadora (memoria, disco duro, pantalla, etc.)
  • Variables
  • Tipos de datos
  • Funciones y metodos
  • Matrices
  • Instrumentos de cuerda
  • Clases
  • Objetos
  • Herencia
  • Estructuras de datos básicas que incluyen: Pila, Cola y Mapa (Diccionario)
  • Algoritmos básicos: clasificación
  • Trapos
  • Punteros (complicados, pero vale la pena entender)
  • Conceptos del controlador de vista de modelo (MVC)
  • Qué es una API

Conceptos de desarrollo de iPhone para cubrir
Un iPhone funciona de manera muy diferente a una computadora normal. En lugar de tener una entrada de teclado en todo momento, generalmente trabajará con gestos. Querrá una comprensión básica de estos conceptos. Tenga en cuenta que no todos estos conceptos son obligatorios, depende de las características que utilizará su aplicación. Puede obtener una noción básica de los conceptos que probablemente no utilizará para su aplicación.

  • Gestos
  • Diferencias de versión de iOS
  • CoreData
  • CoreAnimation (algunas cosas muy ingeniosas)
  • Servicios de localización
  • Rotación del dispositivo (giroscopio)
  • App Sandboxing
  • iDevice Dimensiones y resoluciones
  • Hardware por dispositivo: cuánto espacio, qué es el procesador, etc.
  • Poner aplicaciones en segundo plano (multitarea)
  • Qué está y qué no está permitido en una aplicación (Lineamientos de la tienda de aplicaciones)
  • Modelo de precios de Apple (Apple obtiene 30%)
  • Notificaciones
  • Buscar
  • iCloud
  • Centro de juegos
  • Siri
  • Recordatorios
  • API de Maps

Otras cosas a considerar

  • Obtenga un trabajo de desarrollo una vez que esté calificado. Trabajar con otros desarrolladores, especialmente los desarrolladores de iPhone puede hacer una gran diferencia
  • ¿Quién es su público objetivo para su aplicación? ¿Quieren tu aplicación? ¿Tienen dinero para gastar en una aplicación?
  • ¿Qué necesidad cumple tu aplicación? ¿Otra aplicación ya hace eso? ¿Puedes hacerlo mejor o proporcionar algo diferente?

¡Espero que esto ayude!
Gracias

Esa es una gran pregunta y gracias por preguntar. No tener conocimientos técnicos no es excusa para no desarrollar su ideia. Tiene dos formas de avanzar: (I) Use las herramientas para acelerar el desarrollo de software. (II) Tercerizar el desarrollo de software.

Basaré mi respuesta primero en el aspecto técnico y luego en el lado comercial.

Herramientas para acelerar el desarrollo de software

Debe usar plataformas para acelerar el desarrollo de software y reducir la curva de aprendizaje de programación total. El tiempo total que necesitará para desarrollar una aplicación dependerá de cuán complejo desee que sea la aplicación y también si usará marcos para acelerar el desarrollo de software. Deberá aprender diferentes habilidades de programación:

Backend: Back-end significa las partes que hacen el trabajo, pero el usuario final desconoce o no puede ver. Ir representa hasta el 80% del trabajo total y contiene API, bases de datos, servicios, etc. Hay varios proveedores de BaaS – Backend as a Service para acelerar el desarrollo del backend. http://www.back4app.com puede acelerar hasta un 80% el desarrollo del backend y es una buena opción para los desarrolladores que buscan flexibilidad y control sobre el código fuente. Firebase proporciona resultados similares, pero los usuarios no tienen acceso al código fuente y están bloqueados en la plataforma.

Frontend: Front end normalmente significa las partes del proyecto con las que un usuario interactúa. La interfaz puede ser móvil (Android, IOS, Windows, etc.) o web. Una buena plataforma para acelerar el desarrollo de la interfaz móvil es Xaramin y puede reducir hasta un 70% el tiempo total para desarrollar aplicaciones de Android e IOS. Para el desarrollo web, sugeriría Ruby / Rails y Python / Django como lenguajes de programación rápidos y confiables.

Desarrollo de software externo

Pruebe las siguientes empresas para el desarrollo de software:

Contrata al 3% de desarrolladores, diseñadores y otros talentos tecnológicos independientes. Muy caro, pero muy bueno.

Rent a coder – Contrata programadores y diseñadores independientes – Barato. Necesito investigar bien para encontrar buenos desarrolladores.

Descargo de responsabilidad, soy parte del equipo back4app

Escribí un blog sobre esto. Puede encontrarlo aquí, pero aquí está la descripción general simple.

1. Libro / Curso en línea
Primero, averigua si eres una persona de libros o una persona de libros electrónicos. Conozco a algunas personas que no pueden soportar mirar una tableta durante más de 1 hora y otras que sí pueden. Hay dos idiomas nativos que puede usar para crear una aplicación de iOS. Objetivo-C y Swift. Aquí hay un enlace para informarle sobre qué idiomas debe aprender. ¿Debería aprender Swift u Objective-C? Pero solo recomiendo los libros de Swift a continuación, ya que creo que ese es el camino que debe tomar como principiante. Y muchos de los libros de Objective-C son viejos y están desactualizados, por lo que puede ser un poco difícil de seguir.

1. Libro del lenguaje de programación Swift creado por Apple
Si eres una persona de E-Book que tiene una Mac y ama las cosas gratis, este libro es para ti. Este libro fue creado por Apple y, en general, es un libro excelente no solo para principiantes, ¡sino para todos!

2. The Big Nerd Ranch (6ª Edición)
Ahora, si no tienes una Mac y quieres un libro físico, este es un gran libro que he recomendado a otras personas. Creo que la empresa Big Nerd Ranch tiene una forma muy interesante y divertida de enseñar programación en general. No puedo decirte cuántas personas aman sus libros.

3. Aprendiz rápido
Ahora este libro fue creado por la compañía RayWenderlich. Si no conoce el nombre de la compañía, eventualmente lo sabrá si comienza a programar aplicaciones iOS. Su sitio web generalmente aparece en la lista superior si busca tutoriales para la aplicación móvil iOS.

4. iOS 10 y Swift 3
Este es un curso en línea sobre Udemy por Mark Price. Si compra el curso en el momento adecuado, a veces puede obtenerlo por muy barato. Este curso es para personas que aman seguir junto con el instructor. Creo que Mark Price es realmente un gran instructor y se nota a través de sus videos.

Todos estos son libros y cursos en línea que recomiendo. No puede equivocarse si elige cualquiera de estos libros o cursos en línea. Estos son excelentes tanto para principiantes como para programadores experimentados. Y solo porque no veas un libro recomendado no necesariamente significa que sea malo. Puede ser que nunca lo haya usado para mí.

  • Necesitas una Mac. Una Mac Mini barata de segunda mano es lo suficientemente buena.
  • Necesita al menos un iDevice. Un teléfono está bien. Un profesional puede tener cuatro o cinco dispositivos para probar. Un dispositivo reciente es mejor que uno antiguo.
  • Necesita un cable Lightning estándar.
  • Necesita descargar Xcode, que es el IDE para iOS.
  • Y si desea publicar en la App Store, necesita una cuenta de desarrollador de Apple.

Una vez que tenga sus ingredientes listos, puede comenzar a cocinar.

Abra Xcode y cree aplicaciones dibujando interfaces de usuario en Interface Builder, y luego creando ViewControllers y otro código personalizado que haga que su aplicación funcione.

El nuevo lenguaje Swift es divertido y muy poderoso. Sugiero comenzar con la guía Swift Language y usar la función Playgrounds para probar cosas.

Hay tutoriales en línea, libros, videos y miles de otros recursos.

Podrías hacer una aplicación. Intenta algo simple. Una aplicación de reloj digital. O una aplicación de reloj analógico.

¡Entonces quieres desarrollar aplicaciones iOS!

En 2014, Apple ideó un nuevo lenguaje para su dispositivo OS X, macOS, tvOS y, por supuesto, iOS.

Antes de comenzar a aprender a desarrollar aplicaciones de iOS, primero debe tener una Mac. puedes comenzar con mac mini (mínimo) y dispositivo iOS (¡obviamente!

Una vez que los tenga, descargue Xcode.

Swift es el idioma que necesitas aprender. Puede comenzar con este enlace -> Swift – Apple Developer también puede descargar la guía de programación swift3 The Swift Programming Language (Swift 3 Beta) de Apple Inc. en iBooks

pasar por ese documento. Es muy útil. Puedes hacer un curso en línea desde Udacity – Clases y nanodegrados gratuitos en línea o comenzar a aprender en Treehouse gratis

Casa del árbol | Pistas, aunque Treehouse tiene una suscripción paga, te sugiero que lo hagas ya que el curso está estructurado muy bien y obtendrás un buen conocimiento del desarrollo de aplicaciones iOS. es un curso de 40 horas y estoy seguro de que será realmente beneficioso para usted.

Espero que mi respuesta te sea útil.

¡Todo lo mejor para tu aventura de codificación!

Si tiene una Mac, simplemente descargue Xcode y google para CUALQUIER tutorial de “Hola mundo” para Swift.

Si no tiene una Mac, primero obtenga una, luego siga los pasos anteriores. No querrás molestarte con Hackintosh o el desarrollo de plataformas cruzadas.

Considere NativeScript o algo así … vea, algunos de nosotros realmente leemos la biografía de la persona que hace una pregunta. {mueca}

Teniendo en cuenta sus antecedentes, este podría ser el mejor enfoque. Las aplicaciones nativas no son la única ruta.

Básicamente salta y hazlo. Si puedo ayudar, dame un grito.

Escribí el libro sobre la aplicación del sentido común en los negocios: efecto de curva púrpura

PD: No he usado este producto, pero he evaluado otras herramientas similares.

Echa un vistazo a esto :

Comience a desarrollar aplicaciones de iOS (Swift): salte directamente

Lo mantendré simple. Necesita una Mac y este sitio web iPhone Tutoriales y puede comenzar de inmediato.

Comience a leer la programación en el objetivo c de Stephen G Kochan (4a edición)

Y sigue este tutorial

Curso gratuito de programación de iOS y iPhone para principiantes

La respuesta de Christopher Pow a Tengo 40 años, actualmente vivo bien y quiero entrar en programación o ciencias de la computación (actualmente en cumplimiento normativo). Necesito mantener a mi familia, por lo que dejar todo y volver a la escuela no es una opción. Ideas?

1) comprar una mac, instalar Xcode
2) Aprender programación, c / objetivo c
3) un montón de recursos en línea para comenzar. ¡Google “tutorial de iOS” y estarás en camino!

Hola.

Si desea crear una aplicación para iOS, puede ver algunos videos en youtube o contratar desarrolladores para esto. Pero podemos proponerle que use una aplicación móvil ya hecha para iOS nativo como AmazingCart. Es una buena solución para cualquier tienda web. Pruébelo aquí AmazingCart para iOS

Atentamente.