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.
- Se me ocurrió una idea de aplicación, e hice mi propia investigación, wireframes y notas. ¿Debo buscar inversores o intentar financiarlo yo mismo?
- Estoy pensando en mudarme a Windows Phone desde un iOS, ¿qué me estaría perdiendo?
- Quiero recaudar fondos para un tipo único de aplicación de mensajería instantánea que quiero crear. ¿Cuál debería ser mi objetivo de financiación?
- Cómo seguir ejecutando la aplicación en segundo plano sin usar el Servicio
- Si quiero chatear con una chica extraña en WeChat, ¿qué puedo decir al principio?
- 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.
- 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.
- 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.
- 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.
- 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.
- 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.
- 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.
- 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.)
- 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.
- 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!)
- ¡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.
- 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.
- Prueba usando el simulador: puedes probar sin un iDevice por ahora, usando el simulador en tu Mac.
- 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í.
- 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!
- 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