Mi calificación personal de programadores de iOS y Android. Cómo aprender a programar para iOS

El desarrollador de 20 años, Yaroslav Morgachev, escribió una columna para el sitio sobre cómo en tres meses aprendió a desarrollar aplicaciones iOS en lenguaje Swift, lanzó una aplicación de fitness y llegó al top 1 en la categoría "Salud y fitness" y al top 3 en todas las aplicaciones pagas App Store.

No hace mucho, mi primera aplicación, "Summer Body", llegó al top 1 en la categoría "Salud y fitness" y al top 3 en todas las aplicaciones pagas de la App Store.

En un mes y medio de publicación, se descargó 5 mil veces, y durante todo este tiempo permanece en la selección “Juegos y aplicaciones por 15 rublos” de Apple.

¿Cómo es esto posible? A menudo aparecen personas en el sitio como "Si quieres aprender a programar, prepárate para pasar 10 años de tu vida haciéndolo". Y sí, hay algo de verdad en esto.

Lo único es que en 10 años no solo aprenderás a programar, sino que te convertirás en un auténtico profesional en esta materia, capaz de responder a StackoverFlow como un gurú.

De hecho, puedes empezar a crear aplicaciones sencillas en 2-3 meses, dependiendo de tu perseverancia, perseverancia y cerebro. Todo tiene que empezar con una idea que te ilumine.

Entonces me metí en la jungla de la programación.

Paso uno. El nacimiento de una idea

No ocultaré el hecho de que tenía cierta experiencia trabajando en proyectos. Aquí podemos recordar proyectos en el campo del diseño, la agencia de publicidad de Twitter twiPR, que lanzamos hace tres años (y que pronto cerró), y mucho más.

En general, ya se ha mejorado la habilidad para lanzar y sacar a la luz proyectos, aunque sea en un nivel inicial. Pero el movimiento específico hacia el desarrollo de aplicaciones comenzó con Stepan Svetly con la aplicación "Motivación del día".

Después de leerlo, me vino una idea interesante: a diferencia de la web, la App Store tiene reglas diferentes.

No es necesario crear nada nuevo si desea comprar la aplicación. Por ejemplo, si ha estado visitando regularmente la App Store durante mucho tiempo, es posible que haya notado claramente que existen categorías de aplicaciones estacionales.

Las aplicaciones de entrenamiento se vuelven populares cada primavera, pero cada primavera las aplicaciones cambian. Y todavía los compran.

Paso dos. Estamos buscando como estudiaremos.

Como dije, mi experiencia en programación para iOS fue “0”. Por tanto, al principio existía Google. En general, si quieres llamarte desarrollador (a los desarrolladores "normales" no les agradarás mucho por esto, pero lo entenderás más adelante), tendrás que aprender a obtener información no de un profesor.

Encontrará decenas y cientos de líneas de código en una variedad de recursos y sí, en la mayoría de los casos nadie describe "cómo funciona esto". Así que prepárate para descubrirlo por ti mismo.

Después de revisar los enlaces en los resultados de búsqueda, puede encontrar un sitio que ofrece tutoriales en vídeo sobre Swift. Este lenguaje es tres veces más difícil que HTML. Para aquellos que no saben HTML, lo parafrasearé: aprender Swift es un poco más fácil que aprender a jugar ping pong.

Tal vez le resulte difícil al principio, cuando sólo tendrá que entender con qué principios funciona. Además, todas las dificultades se describen con la frase: "Sé cómo debería suceder esto mediante programación, pero no sé cómo escribirlo". El Google ya mencionado te guardará aquí.

En cuanto a la búsqueda, la mayor parte del código que encontrará estará escrito en Objective-C. Esto se debe a que Swift es un lenguaje relativamente nuevo y, antes, toda la App Store estaba formada por aplicaciones escritas en Objective-C. Actualmente hay alrededor de 2 millones de aplicaciones disponibles en la tienda de aplicaciones, y sólo 100.000 de ellas están escritas en Swift. Esto es sólo el 5%.

De esto podemos suponer que el 95% de toda la información sobre desarrollo de iOS que encuentres no es adecuada para ti. Pero. Hay un traductor genial para este caso.

Para aquellos que ahora están pensando: "¿Por qué no aprender Objective-C en lugar de Swift?" - respóndete a la pregunta: ¿quieres escribir de forma rápida y clara, o tener más información y ejemplos, pero con una sintaxis poco clara y una gran cantidad de signos de puntuación? Lo mismo. Entonces elige Swift.

Paso tres. Creamos la idea y base de la aplicación.

Los primeros clics en el código fueron ridículos y lo importante es que fueron solo clics. En el fondo de mi cerebro lo entendí perfectamente: programar implica algo que hay que escribir.

Pero, maldita sea, preferí entender Xcode usando el método ruso original: "poke-poke". No funcionó. Más tarde, como persona que aprende rápidamente de los errores, pasé a aprender lecciones. Y comencé a escribir una aplicación para aprender las reglas de tránsito. La idea no era crear una idea. Y tome uno popular y hágalo un poco más genial de lo que se presenta ahora.

Esto duró aproximadamente una semana y media. Entonces me enfrenté a un montón de preguntas. Como escribí, las respuestas son muy difíciles de encontrar en la versión Swift. Además, me di cuenta de que había elegido un área que era demasiado pesada para un principiante en términos de volumen: las normas de tráfico. Pero esto es teoría, pruebas cronometradas, un juego en el que a preguntas aleatorias se dan hasta tres errores. Se hizo evidente: esta solicitud la haré hasta finales del verano. Demasiado tiempo.

Y entonces me vino a la mente la idea número 2: una aplicación para el entrenamiento diario. Hay miles de análogos en la App Store, pero esto es lo interesante: las aplicaciones más simples con el botón "Inicio" cuelgan en la parte superior. Haces clic y ves qué y cuánto necesitas hacer. Todo.

¿Por qué las aplicaciones de Nike y similares, que superan a la competencia en términos de funcionalidad, no están en los primeros puestos? La idea es simple, pero la implementación es demasiado compleja.


Así que decidí crear una aplicación que fuera sencilla en todos los aspectos y que ayudara a la gente a cargar.

Paso cuatro. Dibujando una portada “deliciosa”

En la etapa de diseño de la "cáscara" de la aplicación, me vino a la mente un extracto del libro "Design Thinking in Business" de Tim Brown, que describe la situación con la compra de una bicicleta.

En él, los diseñadores se dieron cuenta: la gente sólo quiere llevar una bicicleta cómoda para andar y no escuchar las quejas de un asesor de ventas sobre una solución técnica de última generación y las delicias de su apariencia. Eso es lo que decidí: el diseño sería lo más sencillo y comprensible posible.

Como ya dije, anteriormente tenía la habilidad de "remachar una interfaz en una hora". La habilidad se aplicó con éxito. Si te interesa, utilicé Sketch 3 en lugar del producto de Adobe, que considero demasiado sobrecargado.

Además de la interfaz, encargué imágenes con ejercicios a un ilustrador independiente. La tarea técnica era la siguiente: quiero ver a un chico corriente haciendo ejercicios, y no a un estereotipo engreído con una camiseta ajustada y pezones protuberantes.


Paso cinco. Programación

Cuando comiences, tendrás que descubrir la función AutoLayot (es algo así como "programar con un mouse"). Le permite asegurarse de que una inscripción esté en el mismo lugar en diferentes generaciones de iPhone y iPad.

No he encontrado ningún tutorial que valga la pena sobre AutoLayot, y todos los ejemplos en YouTube lo usan de manera un tanto casual. Sinceramente te deseo mucha suerte y resistencia al estrés, para no borrar al carajo todo lo relacionado con la programación a estas alturas.

Por cierto, esta función no funcionó para mí de inmediato y la activé dos días antes de finalizar el trabajo en la aplicación. Estos fueron los dos días más aburridos de todo el desarrollo, porque consistieron en la misma secuencia de iteraciones: “pruébalo - mira - ¿funciona? - repetir".

Merece especial atención el momento en el que es necesario hacer mover algún elemento (por ejemplo, pulsando un botón). Para hacer la vida más fácil a los futuros desarrolladores, les escribo un detalle técnico: señores, también intenté mover la Vista con AutoLayot habilitado y fue un error. Es necesario cambiar la restricción. Entonces comprenderás lo que significa todo esto.

Otro consejo importante: Xcode tiene una zona de pruebas: Xcode Playground. Por supuesto, puedes hacerlo, pero te desaconsejo encarecidamente: si profundizas, puedes perder rápidamente la motivación porque no estás creando nada.

Soy partidario de la opinión de que una persona debería ver el resultado de su trabajo cuando aprende, y el sandbox es aprender por aprender. Pero hay un lado bueno: en la caja de arena puedes conocer a Swift en el vacío. Aunque, nuevamente, según mi experiencia, necesitará UIKit, CoreData, y la complejidad estará en ellos.

Swift, por otro lado, aprende sobre la marcha y, en su mayor parte, es inglés simple; incluso sin aprender Swift, puedes entender lo que hará una línea. prefiereStatusBarHidden() -> Bool (devuelve verdadero).

Entonces, pensé que mi proyecto debería llevarme dos días. ¡Pero ese no fue el caso! La primera pantalla fue la pantalla principal y tardó 4 horas. Luego pasé a lo más importante: el entrenamiento.

Si ahora estuviera escribiendo en un blog técnico altamente especializado, la gente se reiría a carcajadas del primer borrador del código. Pero dejemos eso para los blogs de tecnología. Sólo diré que me llevó una semana entrenar solo.

Luego vinieron todo tipo de reseñas y descripciones de ejercicios y, finalmente, compras y configuraciones dentro de la aplicación (la aplicación te recuerda el entrenamiento a la hora acordada).

Como resultado, llevó un mes desarrollar la aplicación.

Paso seis. Revisión de la tienda de aplicaciones

El primer intento de enviar la solicitud para su revisión fue inmediatamente después de que la abrí en mi teléfono y verifiqué todo. Como era de esperar, me rechazaron. Resultó que mi aplicación no tiene el botón "Restaurar compras".

Ok, intenta el número dos: agrega "Restaurar compras" y envía la solicitud. Negativa de nuevo. Resulta que la primera vez también pasé por alto la queja sobre las capturas de pantalla de la aplicación que crean “falsas asociaciones con productos Apple”. En el foro me aconsejaron que leyera las directrices, en las que no encontré nada, ya sea porque no busqué bien o porque realmente no había nada allí.

También me enviaron una captura de pantalla que crea estas asociaciones falsas. Era la pantalla de bloqueo.

A la izquierda hay una pantalla con asociaciones falsas, a la derecha hay una pantalla tomada directamente de mi teléfono (que fue aceptada)

Cambié las capturas de pantalla a imagen y semejanza de las de otras aplicaciones. Eliminé el nombre del operador, agregué una señal y un ícono de Wi-Fi. ¿Puedes adivinar qué pasó después? Negativa.

Finalmente, me ayudó a aprobar esta revisión el ya mencionado Stepan Svetly, quien dijo: "La captura de pantalla debe ser exactamente igual a como sería en un dispositivo real". Devolvemos al operador, agregamos señal, Wi-Fi y un ícono de cámara hacia abajo. Enviamos. Ay, milagro. Por la mañana recibo la codiciada notificación "La aplicación está pendiente de ser lanzada por el desarrollador".

Aquí vale la pena mencionar un truco de vida interesante: la aplicación pasó cuatro controles en cinco días, y el tiempo promedio para verificar las aplicaciones, según tengo entendido, es de una o dos semanas. ¿Quieres también? Escriba una solicitud especial para verificar rápidamente la aplicación con Apple.

  1. Lenguaje de programación. Lo que necesitas saber para escribir aplicaciones para iOS.
  2. ¿Necesita un diseñador, desarrollador de interfaces u otra persona?
  3. Parte oficial: certificado de desarrollador.
  4. Equipamiento necesario para un desarrollo confortable.
  5. La eterna pregunta: ¿AndroidOS o iOS?
  6. ¿Qué hay que hacer hoy?
  7. Creando un nuevo proyecto.
  8. Compilación. ¿Qué es y por qué es necesario?
  9. Ejecutar en el simulador.
  10. Imprimimos “¡Hola, mundo!”
  11. ¿Qué vistas estándar hay en iOS?

Lenguaje de programación. Lo que necesitas saber para escribir aplicaciones para iOS

Lenguaje de programación(wikipedia.org) es un sistema de símbolos formal diseñado para grabar programas de computadora. Un lenguaje de programación define un conjunto de reglas léxicas, sintácticas y semánticas que definen la apariencia del programa y las acciones que el ejecutante (computadora) realizará bajo su control.

Quizás la pregunta que hice en el título de esta parte sea bastante compleja. Puedo responderlo simplemente: Objective-C. Si me detuviera ahí, estaría equivocado. Yo diría que Objective-C es lo mínimo. Recientemente hubo una conferencia de Yandex, TODAVÍA, en la que uno de los informes se dedicó a qué lenguajes de programación debe conocer un desarrollador. La respuesta fue algo como esto: “Debe aprender cada vez más lenguajes de programación constantemente, sin detenerse en ninguno en particular”.. Estoy completamente de acuerdo con esto. Al aprender nuevos lenguajes de programación, aprende nuevos enfoques y métodos de programación. Por tanto, para escribir aplicaciones para iOS es necesario conocer Objective-C, pero también es recomendable conocer otros lenguajes de programación para que tu código sea bueno, eficiente y flexible.

Si aún no eres programador, te aconsejo que comiences con el lenguaje C. Descargue el libro de Kernighan y Ritchie ( o mejor comprar) sobre el lenguaje C, léelo, haz todo lo que te sugieran y luego te aconsejaría que pases a Objective-C. Si ya comprende cómo escribir programas, está listo para responder fácilmente las preguntas: “¿Qué son los tipos de datos? ¿Qué es una variable? ¿Qué es una función o método? ¿Qué es un enlace y un puntero? Qué ha pasado "incluir”?” , conoce C o C++ o Java o C#, entonces está listo para escribir su primera aplicación para iOS.

También necesita conocer los conceptos básicos de la programación orientada a objetos y los patrones de diseño. La lista probablemente podría seguir y seguir, pero no estoy preparado para reclamar una explicación cualitativa de estos conceptos. Sí, desafortunadamente, Objective-C no es el lenguaje con el que puedes comenzar tu viaje como programador. Pero si te gusta y quieres crear, entonces es hora de que vayas a la tienda, compres libros y comiences tu viaje como desarrollador.

¿Necesita un diseñador, desarrollador de interfaces u otra persona?

Otra pregunta no menos sencilla. Si es programador y sabe cómo escribir programas de consola y desea comenzar a escribir aplicaciones para iOS, en la etapa inicial no necesita a esa persona. Si tienes un iPhone || iPad || iPod Touch, estás familiarizado con iOS, entonces no necesitas un desarrollador de interfaz. En general, Apple tiene dicho documento: HumanoInterfazPautas. Este documento describe dónde y qué elemento de interfaz se debe utilizar. Por tanto, en la etapa inicial puedes prescindir de terceros. En general, el SDK de iOS ofrece suficientes oportunidades para pintar la interfaz de la aplicación, por lo que no es necesario dibujar botones ni textos multicolores, rellenos degradados, etc. en PS. Posteriormente crearemos el primer proyecto, en el que nos familiarizaremos con todas las etapas de la creación de la aplicación "¡Hola, mundo!".

Sin embargo, debe comprender que cuando comiencen proyectos serios, aplicaciones que desea publicar en la AppStore, le resultará más difícil sin un diseñador y desarrollador. La dificultad puede manifestarse en diferentes etapas, ya sea durante el desarrollo de la aplicación, cuando pasas horas buscando la imagen necesaria o sentándote y creando en PS, o después de publicar la aplicación y comenzar a recibir comentarios de nuestros queridos usuarios que se quejarán de tu pobre. diseño de aplicaciones gratuitas. Encontré problemas similares en ambas etapas. Después de recibir pésimos comentarios en la AppStore, quise abandonar mi aplicación, que por cierto es gratuita, y olvidarme de los usuarios desagradecidos. Sin embargo, la utilidad de la aplicación para mí, así como para muchos otros usuarios, me hizo tragarme esos comentarios enojados y continuar desarrollando la aplicación. Hace unos tres meses comencé a desarrollar una aplicación junto con un diseñador que me dice qué insertar y dónde, qué color elegir, dónde y qué imagen dibujar, y esto, quiero decir, es bastante conveniente. Por lo tanto, todavía le aconsejo que en algún momento comience a utilizar los servicios de los diseñadores para recibir buenos comentarios de los usuarios. Y recuerde: los usuarios de dispositivos iOS quieren ver bien diseño de la aplicación, incluso si su funcionalidad se ve afectada.

Parte oficial: certificado de desarrollador

Probablemente ya hayas oído hablar mucho de algún tipo de certificado de desarrollador. Ahora intentaré ponerte al día: por qué es así y si lo necesitas ahora mismo. Un certificado de desarrollador es un archivo, como cualquier otro certificado. Apple le entrega este archivo después de pasar por todas las etapas de registro en el sistema. iOS (Mac OS) Revelador (Empresa) Programa.

¿Qué te aportará tener este archivo y registrarte en uno de los programas anteriores? Las respuestas a esta pregunta son abrumadoras. Por lo tanto, solo diré lo más importante (todo lo que se describe a continuación se le brinda durante exactamente un año):

  • probar sus aplicaciones en sus dispositivos (aunque esto parece ser pirateable y se puede hacer sin un certificado)
  • acceso al foro de desarrolladores en el portal de Apple (aunque hay una comunidad en StackOverflow.com, donde podrás encontrar respuesta a tu pregunta mucho más rápidamente)
  • posibilidad de descargar versiones beta (y por supuesto las actuales) de iOS y Xcode
  • la capacidad de instalar versiones beta de iOS en su dispositivo
  • capacidad de publicar una aplicación en la AppStore
  • la capacidad de vincular hasta 100 dispositivos a su cuenta, permitiendo así que estos dispositivos instalen versiones beta de iOS, prueben sus aplicaciones (aún no publicadas en la AppStore) y muchas más cosas ilegales
  • la oportunidad de mostrarles a tus amigos que eres un desarrollador oficial de aplicaciones iOS

Si decide que necesita dicho certificado, prepárese para desprenderse de $100 ($300 para Enterprise), envíe un fax a los EE. UU., ingrese los detalles de su tarjeta bancaria (¡atención! La suya, exactamente la suya) y termine de leer esto. capítulo.

Entonces, vámonos.

  1. Siga este enlace http://developer.apple.com/programs/ios/
  2. Haga clic en Inscribirse ahora
  3. Leemos atentamente la inundación y seguimos adelante – Continuar
  4. Aquí tenemos 4 puntos:?a. ¿Quieres crear una nueva ID de Apple para el Programa de Desarrolladores de Apple?b. ¿Quieres utilizar una ID de Apple existente?c. ¿Ya estás registrado como desarrollador simple y ahora quieres convertirte en desarrollador oficial con todos los beneficios descritos anteriormente? Ya eres miembro del Programa de Desarrolladores de iOS o Mac y deseas vincular otro programa a tu cuenta
  5. Amigos, a continuación deben seguir un par de pasos para completar su información personal. Ya no recuerdo exactamente qué hay allí. Si tienes alguna duda, hazla en este tema, te responderé todo lo mejor que pueda.
  6. Se le proporcionó un enlace a un archivo .pdf que debe completar y enviar por fax a Apple.
  7. Lo imprimimos y lo cumplimentamos (con mucho cuidado y cuidado).
  8. Enviamos un fax a la oficina de Apple en USA. (Cuidado que tu fax no caiga en malas manos, porque allí indicas el número de tarjeta bancaria y CVV).
  9. Esperamos N número de días (semanas) para que Apple procese su solicitud.
  10. Recibimos una carta felicitándote por registrarte en el programa y perder cien dólares. ¡Hurra!

Después de completar con éxito la misión, tendrás acceso a http://developer.apple.com/membercenter/. Quizás una revisión de esa página requiera un artículo separado o una búsqueda en Google/Yandex.

Bueno, amigos, pasemos a los temas restantes del orden del día.

Equipo necesario para un desarrollo cómodo.

Si ha decidido seriamente comenzar a desarrollar aplicaciones para iOS, le recomiendo encarecidamente que compre inmediatamente una computadora/portátil con MacOs. La opción más barata es una Mac Mini o algo usado. Si eres estudiante y vas a llevar equipo contigo: Macbook Air. Si tiene mucho dinero y desea una computadora portátil potente y versátil (para juegos, tareas informáticas complejas y programación), Macbook Pro. Si deseas hacerte con una computadora de escritorio, una iMac o Mac Mini. Para el desarrollo, cualquier computadora con cualquier configuración existente será adecuada para usted. El tamaño de la pantalla queda a su discreción. Personalmente, ahora estoy sentado frente a una Macbook de 13” y una Mac Mini de 17”. Estoy contento con ambas pantallas. En todo caso, siempre puedes conectar un monitor externo a tu computadora portátil.

No olvides que tarde o temprano necesitarás un iPhone, iPod o iPad. No tienes que depender únicamente del simulador de iOS, que se distribuye en el mismo paquete que Xcode. Pruebe siempre las versiones de lanzamiento en los dispositivos. O busque evaluadores (responsables y concienzudos).

Si no está dispuesto a gastar tanto dinero en equipos nuevos, puede intentar instalar un Hackintosh en su computadora.

La eterna pregunta: ¿Android o iOS?

Es posible que esta pregunta debería haberse hecho al principio, pero aún se encuentra al final de este artículo. ¿Está seguro de que quiere probar suerte en el desarrollo móvil, pero no sabe qué plataforma móvil elegir? No puedo responder esta pregunta por ti. Pero sé una cosa: si quieres desarrollar aplicaciones para iOS, entonces debes amar los productos Apple y los sistemas operativos iOS y MacOs. Quizás te preguntes: ¿por qué es esto? La respuesta es simple: debes amar lo que haces, debes crear. Sólo entonces podrás desarrollar un producto realmente interesante y útil. Sólo en este caso disfrutarás aprendiendo Objective-C e iOS. Creo que esto es muy importante. Si tiene sentimientos similares hacia los productos Apple, no dude en adentrarse en el campo del desarrollo de iOS. Si piensas: conozco Java, pero no conozco Objective-C, pero me gusta más iOS que AndroidO, entonces elige iOS. No, pero ¿qué esperabas que empezara a elogiar el sistema operativo Android?

También me gusta la esfera iOS por su tienda de aplicaciones. Allí todo es bonito, correcto y hay una moderación muy estricta de las solicitudes. La descarga de aplicaciones que hay ahora en el sistema operativo Android es simplemente terrible, tanto para los usuarios como para los desarrolladores dignos.

¿Qué hay que hacer hoy?

Hoy debes decidir: Cuando comiences a desarrollar aplicaciones, ¿tu experiencia actual será suficiente para aprender?Objetivo- do¿Tienes el equipamiento necesario y, lo más importante, las ganas?

Hola Mundo.

Comprobando la preparación

Pasemos de la teoría a la práctica. Para la lección práctica, necesitará Xcode 4.2 con iOS SDK, preferiblemente un certificado de desarrollador, conocimientos de C, C++, Java u Objective-C (bueno, tal vez sea adecuado el conocimiento de otros lenguajes) y, finalmente, ganas. para empezar a escribir aplicaciones para iOS. Si le falta algo, por ejemplo, un certificado de desarrollador, el artículo seguirá siendo relevante para usted. En cualquier caso, me parece que todo usuario de un dispositivo iOS debería estar interesado en echar un vistazo al funcionamiento interno del desarrollo de aplicaciones.

Creando un nuevo proyecto

Vamos. Haga clic en el icono de Xcode. Se abrirá una ventana similar a esta:

Seleccione el elemento "Crear un nuevo proyecto Xcode". En la siguiente ventana, seleccione el tipo de proyecto. Necesitamos: “iOS – Aplicación – Aplicación de vista única”.

Haga clic en Siguiente. Veremos una ventana con el siguiente contenido:

Déjame explicarte los campos de entrada:

  1. Nombre del producto: el nombre del nuevo proyecto; puede ingresar cualquier nombre, pero le aconsejo que utilice nombres idénticos al mío, porque los consultaré periódicamente.
  2. Identificador de empresa: el identificador de su empresa; puede completarlo como desee.
  3. Identificador de paquete: un identificador único para su aplicación. Este campo se puede editar más tarde.
  4. Prefijo de clase: un prefijo que se asignará a los nombres de todas las clases que cree en el proyecto. Dejé el campo vacío ( "XYZ"– esto es sólo una pista).
  5. Familia de dispositivos: en qué tipos de dispositivos se puede instalar el proyecto. Puedes elegir una de tres opciones: iPad/ iPhone/ Universal. Su propósito es obvio. Si no puedes decidir ahora si necesitas crear una aplicación universal, puedes elegir cualquiera de las otras opciones. Esto se puede corregir en cualquier etapa del ciclo de vida del software.
  6. Usar Storyboard: esto está relacionado con la creación de un modelo de interfaz de usuario. Agregado con iOS5, para que al usar este horror, su aplicación solo pueda instalarse en dispositivos con iOS5 o superior.
  7. Usar el conteo automático de referencias es una nueva característica del compilador Apple LLVM 3.0: administra (casi) automáticamente la memoria (monitorea fugas, zombis y otros horrores). Yo diría que para un principiante es una opción ideal. PERO – 1) no todo es tan automático, 2) ¿confías más en el compilador que en ti mismo?, 3) Recomiendo administrar la memoria manualmente.
  8. Incluir pruebas unitarias: conecte las pruebas unitarias al proyecto.

Verá una ventana para seleccionar una categoría donde se colocará el proyecto. Solo quiero advertirte que automáticamente se creará una carpeta con el nombre de tu proyecto en la carpeta que seleccionaste, es decir, no es necesario crear una carpeta adicional para un proyecto específico.

No marcamos la casilla de verificación "Crear repositorio git local para este proyecto". Es mejor conectar nuestro proyecto al repositorio de código más adelante si es necesario.

Haga clic en "Crear" y verá una nueva ventana, la ventana de nuestro espacio de trabajo:

Y así, hemos creado un proyecto, se han generado algunos archivos, algunas ventanas están abiertas.

Echemos un vistazo a los archivos en el menú de navegación:

  • Los archivos con el sufijo “.h” son encabezados, donde daremos descripciones de clases.
  • Los archivos con el sufijo “.m” son archivos de implementación, donde implementaremos las clases descritas anteriormente.
  • Los archivos con el sufijo ".xib" son archivos que describen la interfaz de una única ventana de aplicación.

Compilando el proyecto

Compilación -

  1. traducción de un programa a un lenguaje cercano al lenguaje de máquina y su posterior ensamblaje.
  2. traducción de un programa escrito en el idioma fuente a un módulo objeto (realizada por un compilador) y su posterior ensamblaje en un módulo de programa listo para usar.
  3. traducción de un programa escrito en un lenguaje fuente y su posterior ensamblaje en un programa en algún código interpretado de bajo nivel independiente de la máquina (como, por ejemplo, en el caso del lenguaje Java).

El proceso de compilación consta de las siguientes fases:

  1. Análisis léxico. En esta fase, la secuencia de caracteres del archivo fuente se convierte en una secuencia de tokens.
  2. Análisis sintáctico (gramatical). La secuencia de tokens se convierte en un árbol de análisis.
  3. Análisis semántico. El árbol de análisis se procesa para establecer su semántica (significado), por ejemplo, vincular identificadores a sus definiciones, tipos de datos, verificar la compatibilidad de los tipos de datos, determinar los tipos de datos resultantes de las expresiones, etc. El resultado generalmente se denomina "representación/código intermedio". ", y puede complementarse con un árbol de análisis, un árbol nuevo, un conjunto abstracto de comandos o algo más conveniente para su posterior procesamiento.
  4. Mejoramiento. Se eliminan los comandos redundantes y el código se simplifica (cuando sea posible) conservando su significado, es decir, el algoritmo que implementa (incluidas las expresiones precalculadas (es decir, calculadas en la fase de traducción), cuyos resultados son prácticamente constantes). . La optimización puede realizarse en diferentes niveles y etapas, por ejemplo, en el código intermedio o en el código de máquina final.
  5. Generación de código. A partir de la representación intermedia se genera código en el idioma de destino (incluido el enlace del programa).

En un lenguaje más sencillo de mi parte. En la etapa de análisis léxico, se verifica que todos los caracteres de su código fuente estén en el orden correcto y los caracteres relacionados en las siguientes etapas se considerarán como una sola entidad: un lexema. En la etapa de análisis, se verifica que todos los lexemas estén ubicados en el orden correcto, en los lugares correctos y en la secuencia correcta. Finalmente, en la etapa de análisis semántico, se verifican las coincidencias de tipos de datos.

Y así, cuando hace clic en "Crear proyecto", primero se realiza un análisis léxico de su código, si tiene éxito, luego un análisis de análisis sintáctico y luego un análisis semántico. En Xcode, siempre se está ejecutando cierto proceso liviano que realiza esta función, lo que solicita al desarrollador "sobre la marcha". Por ejemplo, si no pusiste “;” o de repente equiparas int con una determinada cadena de caracteres, entonces Xcode subrayará la cadena con una línea ondulada roja.

Corriendo en un simulador

Entonces, intentemos lanzar nuestro proyecto, para el cual todavía no hemos escrito personalmente ni una sola línea de código.

Para ello, veamos el menú: Esquema de compilación(Se le asigna el color verde en mi captura de pantalla). Un diagrama es una determinada configuración de un proyecto. Xcode lo genera automáticamente. Haga clic en la línea a la derecha del nombre del proyecto (nombre del dispositivo); si el dispositivo no está conectado, dirá "Dispositivo iOS". Verá una lista desplegable con el siguiente contenido:

En esta lista seleccionamos dónde se instalará nuestro proyecto: puede ser su dispositivo o un simulador. Si has seleccionado el tipo de aplicación universal, podrás seleccionar el tipo de simulador: iPhone o iPad. También puede seleccionar la versión del sistema operativo para los simuladores (es importante probar el proyecto en todas las versiones de iOS en las que se puede instalar la aplicación). Ya que estamos hablando de la versión mínima de iOS, también debemos mencionar ¿cómo determinar su versión mínima? Es simple: si usa métodos (funciones) que se agregaron en la versión de iOS, por ejemplo, 4.0 , entonces el listón del sistema operativo mínimo requerido se eleva a 4.0 . Bajemos el listón para 4.0 Con 5.0 . Para hacer esto, vaya al menú: "Objetivo de implementación" (resaltado en azul en mi imagen). Seleccione de la lista desplegable 4.0 . Ahora volvamos al menú: Esquema de compilación. Nuestra lista ahora se ve así:

Seleccione "Simulador de iPhone 4.0". Y por último, haz clic en la flecha debajo que dice “Ejecutar”. EN “Panel informativo” Veremos el proceso de compilación. Después de que todo funcione correctamente, se abrirá la ventana del simulador de iPhone:

Ahora repasemos rápidamente las capacidades del simulador.

  • Puedes simular iPhone, iPhone Retina, iPad.
  • Simule diferentes versiones de iOS.
  • Toma capturas de pantalla.
  • Girar pantallas (modos vertical y horizontal)
  • Agitar
  • Simular poca memoria.
  • Simular un servidor de impresión
  • Ubicación de geolocalización
  • Gestos multitáctiles (máximo 2 dedos)
  • Otro

A todo esto se puede acceder desde el menú del programa del simulador:

Algunas palabras sobre el simulador. El simulador solo puede instalar aplicaciones a través de Xcode, se pueden desinstalar directamente desde el simulador (como en un dispositivo real) y admite multitarea. Pero también tiene muchas limitaciones, por ejemplo, no puede instalar un certificado en el almacén de certificados de la aplicación local. Pero el principal inconveniente es que SIMULADOR, no EMULADOR. Es decir, simplemente pretende ser un dispositivo iOS, simplemente dibujando una interfaz similar (nivel de software). Pero el emulador hace exactamente lo que hará el dispositivo (a nivel físico). ¿Qué conclusión se debe sacar? Asegúrese de realizar la prueba en un dispositivo real. He tenido casos en los que funciona en el dispositivo, pero no en el simulador, y viceversa.

Imprimimos “¡Hola, mundo!”

Espero que todo esté más o menos claro hasta este punto. Si no, durante el proceso de desarrollo comenzarás a comprenderlo más profundamente.

Este capítulo fue escrito en memoria de Dennis Ritchie creador del lenguaje de programacióndoy desarrollador clave del sistema operativoUNIX, y también como coautor del libro “Programming Languagedo» .

El propósito del capítulo es decorar nuestra pantalla gris vacía. Genial, vámonos. Volvemos a Xcode, seleccionamos “ViewController_iPhone.xib” en el menú de navegación. A continuación, seleccione "Ver" de la lista que aparece. A la derecha, seleccione "Inspector de atributos". Así es como se ve la ventana para mí más comentarios adicionales:

Ahora agreguemos una UILabel. UILabel es el nombre de una clase en el SDK de iOS que le permite mostrar texto no editable en la pantalla. En general, todas las clases que te permiten mostrar algo tienen el prefijo interfaz de usuario: UIView, UITableView, UITextView, UIButton,…. En la ventana "Objetos disponibles para mostrar", busque una línea llamada Etiqueta. Una vez que lo encontramos, hacemos clic sobre él y lo arrastramos a nuestra vista de pantalla actual.

Las líneas de puntos azules le ayudarán a centrar/calibrar la posición relativa de la marca. Y entonces, seleccione Etiqueta en la lista de objetos mostrados, si aún no está seleccionado, y vea el elemento en las propiedades: Texto. Escribamos allí "¡Hola, mundo!". y presione Ingresar. Aquí tenemos el texto de la etiqueta cambiado y reducido. Arreglemos esto. EN categorías de propiedad elijamos "gobernante""Inspector de tallas". Hay campos:

  • xey son las coordenadas de la esquina superior izquierda de la etiqueta en relación con la vista principal, es decir, la vista donde colocamos la etiqueta; esta es la Vista en nuestro caso.
  • ancho y alto: el ancho y alto del objeto editado, respectivamente.

Puedes intentar editar estos valores y observar los cambios. También puede editar la posición y el tamaño directamente moviendo la etiqueta (texto) y tirando de su marco varias veces. “puntos”.

Dedique otros 15 a 25 minutos a jugar con las diferentes propiedades en las diferentes categorías:

  1. Alineación de texto
  2. Tamaño de fuente
  3. Color, sombra de texto
  4. etc.

Posteriormente volveremos sobre ellos y explicaré el propósito de ciertos campos.

¿Qué vistas estándar hay en iOS?

En el párrafo anterior, mencioné los nombres de algunas clases responsables de la interfaz. La propia consola interfaz de usuario y significa interfaz de usuario. Aquí daré una lista, quizás no completa, de los tipos de vistas disponibles. En primer lugar, todas las clases que se describen a continuación heredan de UIView, es decir. tienen las mismas propiedades y métodos. En segundo lugar, siempre puedes crear tu propia vista personalizada. Lista a continuación:

1) UILabel – etiqueta – propósito principal: mostrar una o más líneas de texto no editables.

2) UIButton – botón – propósito principal: un botón normal, envía señales a los objetos, notificando que se ha hecho clic en él

3) UISegmentedControl – un botón con segmentos – propósito principal: un botón con varias partes activas, puede determinar en cuál se hizo clic

4) UITextField – campo de entrada de texto – propósito principal: campo para entrada de texto por parte del usuario

5) UISlider – control deslizante – objetivo principal: un control deslizante normal que ayuda a cambiar cualquier configuración de forma más intuitiva

6) UISwitch – Interruptor de encendido/apagado – propósito principal: tiene dos estados – encendido o apagado, el propósito es obvio

7) UIActivityIndicatorView - indicador de actividad - propósito principal: generalmente se usa para informar al usuario que la aplicación está descargando datos o simplemente realizando algunos cálculos.

8) UIProgressView – indicador de estado (progreso) – objetivo principal: mostrar el estado de finalización de algo

9) UIPageControl – cambiar entre páginas – objetivo principal: mostrar el número de páginas, mostrar la página actual

10) UIStepper (>= iOS 5) - +/- controlador de pasos - objetivo principal: también obvio

11) UITableView – tabla – propósito principal: mostrar una tabla es quizás el elemento más popular

12) UITableViewCell – celda de tabla – propósito principal: mostrar una fila en una tabla, generalmente personalizable

13) UIImageView – imagen – propósito principal: mostrar una imagen o imagen

14) UITextView – campo de texto (desplazable) – objetivo principal: mostrar una gran cantidad de texto que se puede desplazar.

15) UIWebView – web – propósito principal: mostrar una página web

16) UIMapView – mapas – propósito principal: visualización de mapas

17) UIScrollView – vista desplazable – objetivo principal: mostrar varias vistas que no caben en una pantalla

18) UIDatePicker – tipo de selector de fecha – propósito principal: ideal para ingresar una fecha

19) UIPickerView – tipo de selección de tambor – propósito principal: una alternativa a la tabla al seleccionar una opción

20) UIView – solo una vista – propósito principal: obvio

21) UINavigationBar – barra de navegación – propósito principal: un panel en el que se muestran el título de la pantalla y botones de control adicionales

22) UINavigationItem – Elementos UINavigationBar – propósito principal: obvio

23) UIToolbar – barra de herramientas – propósito principal: mostrar un panel en el que se colocan botones para controlar la aplicación

24) UIBarButtonItem – elementos de la barra de herramientas – propósito principal: obvio

25) UIBarButtonItem (espacio fijo y flexible) – elementos especiales de la barra de herramientas – propósito principal: cambiar la distancia entre los botones en la barra de herramientas

26) UITabBar – barra de pestañas – propósito principal: ayuda a cambiar entre varias pantallas no relacionadas

27) UITabBarItem – elemento de barra de pestañas – propósito principal: obvio

Aquí quiero publicar mi calificación personal de programadores de iPhone y Android. Expreso mi opinión personal como probador de aplicaciones móviles.
No puedo decir que sean los mejores. Pero me gustó trabajar con ellos porque la cantidad de errores después de completar una tarea en particular tendía a cero. Aquellos. estas personas hacen su trabajo de manera eficiente y sin defectos. Si se descubre un error, el número de redescubrimientos prácticamente no supera una vez. El error se corrige de una vez por todas. Esto se logra mediante un buen conocimiento de la plataforma y simplemente una buena calidad del código. Cuantos menos errores haya, menos tiempo se dedicará a corregirlos. Menos tiempo de desarrollo significa que gastas menos dinero en el proyecto.
Considero que la presencia de grietas en el producto terminado es un indicador de la calidad del producto.
Si el programa falla y pierde datos, el usuario descargará otro.
Entonces, calificación personal. La gente con la que trabajé.

  1. Lyubimov Mijaíl, desarrollador de aplicaciones iOS, Sebbia, Rostov-on-Don. Proyecto de puntos de venta.
  2. Dmitri, Desarrollador de iOS, Fidel.ru
  3. Andrey sobre el desarrollador de iOS

Lista negra:

  1. Sistemas D o Sistemas Distribuidos. https://www.free-lance.ru/users/d-systems/portfolio/ Originalmente hicieron mi proyecto. En lugar de 3 semanas, fueron 4 meses. Se refieren a que comencé a realizar pruebas, aunque el desarrollo aún no estaba completo. Recibí un código de muy mala calidad, aunque el requisito original era que el código estuviera hecho de tal manera que fuera fácil escribir una versión para el iPhone. Me tomó muchos recursos hacer modificaciones más tarde. Cuando se anunció esto, acordaron rehacerlo, pero luego se hizo el silencio.
  2. Programadores hindúes. El programador con el que trabajé en uno de los proyectos - el número de errores redescubiertos supera los 3. La aplicación fallaba en cada paso... Cualquier estornudo por dinero...
  3. [correo electrónico protegido]- o Depinfotech. Recomiendo categóricamente no involucrarse. Te envían spam de cartas, quieren emprender cualquier proyecto, aunque no tienen experiencia en desarrollo. A una tarifa de $20 por hora ofrecen un desarrollador junior. Cuando necesitas hacer una aplicación para iOS, envían ejemplos de trabajo en Android

Cuando era autónomo, trabajé con bastantes programadores.

Acerca de elegir un desarrollador de aplicaciones iOS para su proyecto, entonces me guío por las siguientes reglas.

  1. La tarifa para programadores que no tienen aplicaciones en la App Store es de 300 rublos por hora. De una forma u otra, el programador estudiará XCode por su cuenta, si no escribió nada. La tarifa de un programador experimentado es de 500 rublos por hora. Moscú, por supuesto, se destaca. Aquí las tarifas son de 500 rublos y más....
  2. En cuanto a la calidad del código del programa, los programadores rusos son superiores a sus colegas ucranianos e indios. Para mí, es mejor contratar desarrolladores no de Moscú, sino de provincias. Novosibirsk, Kazán... Esto también es válido para las empresas de desarrollo.
  3. Si tienes un proyecto busca un programador que haya hecho algo similar. Si se trata de finanzas, busque quién hizo los cálculos. Si se trata de juegos, ejemplos de juegos. Un desarrollador cometerá menos errores si la industria le resulta familiar.
  4. Ofrezca estimar los plazos para cada tarea. Si un programador se dedica 2 horas a elaborar el diseño de 2 botones, este no es tu programador. Quizás esté exagerando, pero corregir un error no lleva más de 2 horas. Si el error es complejo.
  5. Hazle a un programador una pregunta de matemáticas. Un programador normal podrá derivar una incógnita de la fórmula.
  6. Pregunte si el programador ha trabajado con un rastreador de errores y si conoce los ciclos de manejo de errores. Si funcionó, ¿cuántas reaperturas de errores tuvo normalmente?
  7. Pregunte cuántos fallos suelen tener sus aplicaciones de iOS. Por qué sucedieron y con qué rapidez se corrigieron.

Selección de desarrolladores de iOS para el proyecto.

Si eres cliente y has decidido hacer tu propia aplicación móvil y no sabes qué se necesita para ello.
Puedes contactar conmigo, te lo contaré y te ayudaré a encontrar la persona o empresa que necesitas. Cabe destacar que los desarrolladores independientes de iOS (aquellos que trabajan solos) tienen una tarifa por hora más baja que las empresas (LLC). La calidad de los servicios de una empresa puede ser deficiente y depende de qué tan bien se implementen los procesos de desarrollo de la empresa (si existe un sistema de control de versiones, si existe un rastreador de errores). No siempre una empresa con altas tarifas para programadores de iOS podrá proporcionar una calidad de desarrollo suficientemente buena. Todo depende de personas específicas y, a veces, un desarrollador independiente es incluso mejor. Por otro lado, la empresa ofrece un acuerdo: una garantía de que no será estafado y que el trabajo se completará hasta el final. En el caso de un desarrollador indie de iOS, recomiendo hablar con él personalmente, preguntándole sobre los proyectos que ha realizado.

Contactos de desarrollador

En general, si necesita contactos de desarrolladores móviles, se encuentran a continuación. Simplemente comparte el enlace en una de las redes sociales. redes. También hay contactos de desarrolladores y especialistas en promoción.
Buena suerte.

Anatoly Larin
[correo electrónico protegido] especialista en marketing móvil, te daré consejos ^__^ http://touchin.ru

Alexander Shtuchkin
[correo electrónico protegido] !

Nikolai Dodonov
[correo electrónico protegido] Hagamos nuestra propia aplicación.

Polina Vitenko
[correo electrónico protegido]
Especialista en comunicaciones de marketing, realmente quiero aprender más sobre marketing en el campo de TI.

En línea
Daka Martynyuk
[correo electrónico protegido]

Yaroslav Senshin
[correo electrónico protegido] Estoy escribiendo mi primera solicitud, así que quiero saber todos los detalles.

Iván Kozlov
[correo electrónico protegido]
Dirijo el departamento de desarrollo móvil.

Evgeniy Valeev
[correo electrónico protegido]
CTO de una empresa de software móvil

Alexéi Goncharov
Estamos preparando una solicitud, interesante)

Timofey Utnasin
[correo electrónico protegido]
Empresa FlexyMind: desarrollo de juegos educativos infantiles para sistemas operativos móviles

Natalia Davydova
[correo electrónico protegido]
Jefe del Departamento de Desarrollo Móvil en H&H http://handh.ru

Dima Orlov
[correo electrónico protegido]
hago aplicaciones moviles

Moiseenkov Alexey
[correo electrónico protegido]
Estoy empezando mi propio estudio.

Margarita Syrtsova, [correo electrónico protegido], director de la empresa para la creación integrada de la imagen de la empresa, está motivado por el deseo de desarrollar el área de aplicación

Maxim Poliakov
[correo electrónico protegido]
Sé cómo cambiar el mundo, ahora necesito descubrir la mejor manera de ganar dinero con ello.

Marina Vinogradova
[correo electrónico protegido]
Próximamente lanzaremos una aplicación móvil.

Daniil Sosnin
[correo electrónico protegido]
Estamos preparando una aplicación móvil.

En línea
Ekaterina Zholobova
Zholobova Ekaterina, [correo electrónico protegido] Comercializador móvil experimentado

Zavialov Antón, [correo electrónico protegido] Estoy desarrollando un proyecto para la League of Marketers con soporte interactivo.

Clavo Nasyrov
[correo electrónico protegido]
Una de las áreas del proyecto en la escuela de posgrado ITMO.

Vladislav Alexandrovich
Vladislav Karbovsky, desarrollador
[correo electrónico protegido]

Alexander Khitushchenko
[correo electrónico protegido]
Gestión de proyecto de una aplicación móvil para turistas.

Iliá Chernetski
Iliá Chernetski [correo electrónico protegido] Hago aplicaciones móviles (http://coinkeeper.me, relevanciato.me, etc.)

Olga Kabanova
Olga Kabanova, [correo electrónico protegido], promociono aplicaciones de escritorio y móviles

Ksenia Kopylova
Ksenia K.( [correo electrónico protegido]) y Timofey M. ( [correo electrónico protegido]) — desarrollamos aplicaciones móviles

yura fácil
Lobyntsev Yuri
[correo electrónico protegido]
Lidero el desarrollo de aplicaciones móviles.

Serguéi Shmakov
[correo electrónico protegido]
Gerente de SMM buruki.ru + participando en el desarrollo de una nueva aplicación para buruki.ru para iOS y Android

Peter Falkovsky
[correo electrónico protegido]
El mercado de aplicaciones móviles es interesante.

Nadia Koshkina
Nadezhda Koshkina [correo electrónico protegido]— marketing de proyectos de TI; Estamos desarrollando nuestra propia aplicación. Leonid Nazarov [correo electrónico protegido]— diseñador de interfaces.

Marina Kalyamina
[correo electrónico protegido]
Un tema muy relevante. Tengo muchas ideas en la cabeza para crear aplicaciones, me gustaría escuchar algunos consejos.

Gleb Burov
Gleb Burov, director tecnológico de Seedr
[correo electrónico protegido]

Victor Stefanets
proyectos de internet
[correo electrónico protegido]

Viacheslav Bogoroditsky
[correo electrónico protegido]
Gerente de proyectos en un estudio web.
Actualmente estamos desarrollando la dirección de aplicaciones móviles.

Evgeniy Dementyev
[correo electrónico protegido]
Jefe del Departamento de Desarrollo Móvil en Topface

Iván Balashov
Andrei Markin [correo electrónico protegido], comercializador de TI, planea lanzar una aplicación móvil.

En línea
Denis Kalanov
Director de Desarrollo de TI Dominante
[correo electrónico protegido]
Estamos planeando lanzar una aplicación móvil...

Verónica Minina
Comercializador de aplicaciones móviles, UFT
[correo electrónico protegido]
Motiva: conocer el know how, conocer la experiencia de los compañeros, adquirir nuevos conocimientos, contactos.

Petr Vasilevsky, Alexey Finagin
[correo electrónico protegido], [correo electrónico protegido]
Estamos desarrollando una aplicación móvil.

Popova Tatiana
[correo electrónico protegido]
Estamos desarrollando un proyecto online y preparándonos para lanzar su versión móvil

Andréi Grigoriev
Estamos desarrollando una aplicación móvil de Forex para iOS
[correo electrónico protegido]

En línea
Alexander Záitsev
Alexander Záitsev [correo electrónico protegido] El tema es interesante porque... Lo estoy desarrollando yo mismo.

Vladislav Poklóntsev
Poklóntsev Vladislav [correo electrónico protegido]
Estamos desarrollando nuestra primera aplicación móvil.

Vadim Skarzhevski
[correo electrónico protegido]
Estoy planeando hacer una solicitud. quiero saber las sutilezas

Yana Kuzmina
[correo electrónico protegido]
Responsable de producto de un par de aplicaciones móviles.

Serguéi Grischev
Grischev Sergey
[correo electrónico protegido]
Fundador del estudio de aplicaciones móviles ShadeApps, ya hemos lanzado 2 aplicaciones para iOS; 3 más están en desarrollo

Ekaterina Makarova
[correo electrónico protegido]
Soy un especialista principiante en promoción de aplicaciones móviles y tengo muchas ganas de aprender de la experiencia.

Evgenia Filina
correo electrónico:
[correo electrónico protegido];
[correo electrónico protegido]

Y con este artículo empiezo a escribir blogs. programación para iOS. ¡Y en el futuro también para OS X!

¿Por qué necesito esto? No hace mucho me convertí en el orgulloso propietario de un iPad Retina. ¡Me gustó mucho y quedé gratamente impresionado! Incluso comencé a comprender a los "Applephiles" con su constante deseo de comprar todos los productos Apple que salen al mercado. ¡Pero una cosa es adquirir el de otra persona y otra cosa es crear el tuyo propio! Y este pensamiento me llevó a crear este sitio sobre programación de aplicaciones/juegos para productos Apple.

¿Para quién es este blog? En primer lugar, es para quienes aman programar y crear. Es muy posible que nunca hayas programado en Objetivo-C(este es el lenguaje de programación utilizado), pero realmente quiero empezar. Sin embargo, es recomendable que conozcas algún lenguaje de programación, por ejemplo, macros de Excel, QBasic, C++, C#, 1C en definitiva. Aquellos. Tener una mente matemática te ayudará mucho. Si este no es el caso, está bien. El blog fue creado para principiantes como yo. Entusiasmo desnudo intentaré explicarlo de forma sencilla, accesible e interesante, tal como me gusta.

Algunas palabras sobre el lenguaje de programación. Las reseñas en Internet coinciden en que este lenguaje es conveniente, no complicado, interesante y más "lógico" para una persona que los lenguajes de generaciones pasadas. Por lo tanto, si tienes ganas y pasión, ¡no te aburrirás!

Nuevamente, a partir de reseñas en Internet y de mi propia experiencia usando aplicaciones de la AppStore, me di cuenta de que Diseño Las aplicaciones son lo primero. Incluso supera la funcionalidad del programa. Es decir, si su programa es genial, pero se ve feo, entonces no ganará popularidad. Por lo tanto, es necesario prestar mucha atención al diseño de la aplicación, creando una hermosa Interfaz programas, lo que significa trabajar en Photoshop, tal vez consultar con diseñadores (o estudiar aspectos de diseño en Internet).

Recordar: Interfaz Y Diseño en nuestras aplicaciones debe estar al más alto nivel!

¿Por qué crear aplicaciones/juegos en iOS? Hay dos opciones aquí:

1. Para ti. Tienes un iPhone/iPad y parece que no encuentras una aplicación que se adapte a tus necesidades. ¡Créalo tú mismo! ¡Puedes implementar cualquiera de tus "deseos" en tu aplicación y disfrutarla!

2. Para todos. Esta pregunta ya es más interesante. Después de todo, puedes ser un buen tipo y regalar aplicaciones/juegos interesantes. O puedes venderlo por $1-$100 si, por supuesto, quieren comprarlo :) Creo que estos últimos serán la mayoría. Por cierto, Apple se lleva el 30% de los ingresos por ventas.

De una forma u otra, existen 2 formas de desarrollar aplicaciones:

1. Gratis. Usted desarrolla una aplicación, la prueba en emuladores del entorno de desarrollo. XCode y no lo lleves más allá del sistema operativo. Ni siquiera puedes instalarlo en tu propio teléfono.

2. Pagado. Usted desarrolla una aplicación, la prueba en emuladores del entorno de desarrollo. XCode y comprar:

A. Programa para desarrolladores de iOS: $99 por año, si desea crear aplicaciones gratuitas o de pago para iPhone, iPad, iPod touch y distribuirlas a través de AppStore. (¡lo que necesitamos en el futuro!). Y también pruébalos en tus dispositivos.

b. Programa iOS Enterprise Developer: $299 por año, si desea desarrollar aplicaciones internas: aplicaciones para uso interno en su empresa, sin acceso público.

Como resultado, tenemos: al comienzo de nuestro viaje, solo necesitamos crear aplicaciones y ver cómo se ven en los emuladores. Tan pronto como nos sentimos seguros, compramos el Programa de Desarrolladores de iOS y, adelante, al mundo de la AppStore. Proporcionaré instrucciones de registro más adelante, tan pronto como las necesitemos.

Para obtener información: una vez que se suscribe al Programa para desarrolladores de iOS, deberá pagar una tarifa de suscripción anual. La suscripción podrá renovarse dentro de los 60 días siguientes a la finalización de la anterior. Si no se renueva la suscripción, perderá el derecho a distribuir aplicaciones a través de la AppStore y sus certificados de desarrollador se eliminarán. Para colmo, también se eliminarán todas las aplicaciones que hayas descargado en la AppStore.

Por otro lado, a la hora de decidir convertirte en desarrollador de iOS, debes estar seguro de que vas a ganarte la vida con ello. Y la cantidad de ganancias cubrirá con creces los costos de suscripción.

Hablaremos de esto más tarde.

Y ahora hablaré de cómo aprenderemos a programar. Haré (“publicaré”) entradas con nuevas lecciones en un intervalo de tiempo determinado. Estudiaremos sólo lo que necesitemos en este momento. No habrá información general innecesaria a menos que la necesitemos en esta etapa. Lecciones de texto. Por qué las lecciones en video no son convenientes para mí: en primer lugar, necesitas grabar tu voz), en segundo lugar, no puedes copiar parte del código de una lección en video, por lo que debes volver a escribirlo, en tercer lugar, si escuchaste algo, necesitas "rebobinar", etc. .p., lo que lleva mucho más tiempo. + el texto se puede editar rápidamente, pero el vídeo puede tardar mucho en volver a grabarse. Por lo tanto - texto.

Respecto a la información que hay en Internet. Existe, pero está desactualizado o en inglés. Aquellos que dominan el inglés son bienvenidos a los sitios web oficiales de los desarrolladores. Para aquellos para quienes el ruso es su lengua materna, bienvenidos

Estimados señores, con este artículo abro una nueva sección dedicada a la programación para iPhone, donde tocaremos temas que interesan tanto a principiantes como a no iniciados, así como a los gurús de ObjC, que, esperamos, no fallarán. para corregir nuestros errores con sus comentarios. La lección de hoy es sólo para fines informativos.

Objetivos de la lección

1.Dónde empezar a programar para iPhone.
2.Kit de desarrollador para caballeros.
3.Tarea.

Introducción

Todos vemos el gran éxito de las secciones de aplicaciones de la AppStore que crecen como hongos después de la lluvia. Los editores de todos los portales de información sobre iPhones han perdido los pies y, sin dormir, escriben, escriben y escriben reseñas. Y los programas siguen apareciendo y apareciendo y apareciendo. Es hora de que nos involucremos en este proceso y tomemos nuestro pedazo del pastel festivo.

¿Por dónde empezar? La pregunta es más bien retórica. Eso sí, si usted, querido lector, es abogado o, digamos, constructor, le resultará muy difícil empezar y lo más probable es que no deba hacerlo en serio, porque, según me parece, es mejor hacer una cosa bien que hacer varias cosas mal. Sin embargo, no excluiremos el momento en que quieras programar para el alma, que este sea tu nuevo hobby. Buenas tardes entonces. Sin embargo, si usted, mi querido amigo, ya tiene experiencia en el desarrollo de aplicaciones, sin importar el lenguaje: C, Pascal, Assembly, Delphi o finalmente BASIC o incluso Logo (había uno en mi libro de texto de informática a principios de los 90), entonces Definitivamente deberías probar suerte con las aplicaciones de iPhone.

Aquí llegamos a la respuesta a la pregunta principal: por dónde empezar. Comience con lo básico, no tiene que ir muy lejos, le daré solo algunos enlaces que eventualmente lo llevarán “a Kiev”:

1. Para personas que generalmente no están familiarizadas con el lenguaje C, comience con esto

2. Al programar para iPhone, necesitará conocimientos de POO (programación orientada a objetos). No es tan difícil como sugiere el nombre; de ​​hecho, la programación orientada a objetos se basa en varios principios fundamentales que, una vez que los comprendes, puedes crear fácilmente obras maestras. Lea sobre programación orientada a objetos.

3. Si conoce los conceptos básicos de C y la programación orientada a objetos no le causa ninguna dificultad, le recomendamos que lea la diferencia entre Objective-C utilizado en MacOS (y iPhone, respectivamente) y C y C++ tradicionales. Esto está muy bien descrito.

4.También encontrará respuestas a muchas preguntas en nuestro foro.

El kit de programador de iPhone de un caballero, como el neceser de viajero, es bastante escaso y, en principio, en la etapa inicial no requiere nada más que natural y costoso. Aquí está todo lo que necesitamos para comenzar:

b) Sistema operativo MacOS Leopard versión 10.5.5.

c) Kit de herramientas del sitio web de Apple, el denominado SDK, kit de desarrollo. Este paquete contiene todo lo necesario para el desarrollo. Puedes descargarlo aquí: http://developer.apple.com/iphone, después de registrarte.
d) También necesitamos mucha paciencia y perseverancia. Sin esto, lamentablemente, no hay manera.

Muchas personas pueden darse por vencidas inmediatamente después del punto A. Te lo diré honestamente, antes de conocer el iPhone, nunca había interactuado con Apple en absoluto y escribí mi primer programa para iPhone sin siquiera tener una MacBook. Soy un ávido usuario de Windows, comencé mi vida adulta con Windows 3.1 y viví hasta ver Windows Vista. Me cautivó la comodidad de MacOS y no me arrepiento en absoluto de esta compra, aunque todavía dedico la mayor parte de mi tiempo a ello. Computadoras con sistema operativo de Bill Gates.

Para aquellos a quienes no les convenzan estas palabras, todavía hay una salida. Desde la transición de las computadoras de Apple a una plataforma con procesador Intel, se hizo posible (por supuesto, no sin bailes y panderetas) instalar MacOS en una computadora PC normal, confieso que lo hice yo mismo. En el mundo, este sistema operativo se conoce con diferentes nombres: Kaliway, Hackint0sh, etc. En todos los servicios de alojamiento de archivos puede encontrar fácilmente la imagen que necesita y, al descargarla, puede instalar Makos en su computadora. E incluso si lo desea, ejecútelo en la ventana de VMWare. No describiré cómo hacer todo esto, no es apropiado promover métodos para eludir la licencia en Mac, pero me tomaré la molestia de advertirle sobre algunos errores, evitando los cuales no perderá el interés en la programación incluso desde el principio. etapa de preparación de las herramientas:

1. Al realizar la instalación, utilice SIEMPRE un disco duro independiente conectado como maestro al bus cero IDE o SATA.
2. No intente instalar Leopard desde VMWare; lo comprobé muchas veces; es imposible, aunque hay personas en la red que afirman haberlo hecho.

3. Después de instalar Makos, puedes intentar ejecutarlo desde Windows en WWW, si tienes suficientes recursos. Además, un problema aparte son los controladores. Lo más probable es que el de red te alcance por sí solo, el video será de 800x600, estúpidamente VGA. Pero qué hacer con su tarjeta 8800GTX, su adaptador Wi-Fi y su Bluetooth, depende de su suerte (principalmente no de suerte).

4. No importa cuántas imágenes encontré, todas tenían la versión 10.5.1 o 10.5.2, pero necesitaremos al menos 10.5.5 para funcionar. Actualizo mi Mac a través de Internet, pero con Hackintosh, al actualizar a 10.5.5, este truco no funciona; atrapa la manzana, también se ha probado muchas veces. Hay un algoritmo en Internet sobre cómo actualizar Hackin a 10.5.5 manteniendo la funcionalidad del sistema; búsquelo y lo encontrará.

Y así, se describen las herramientas, pasemos a la tarea.

Nuestra tarea será simple, pero muy importante; sin completarla, todas las demás lecciones se convertirán en texto HTML inútil para ti y mi trabajo no valdrá la pena. Y así, queridos programadores de iPhone, mientras escribo la Lección No. 2, ustedes deberían:

A) Obtener una Mac o instalar un Hackintosh (solo con fines informativos)

B) Actualícelo a la versión 10.5.5.

C) Descargue e instale el SDK de Apple. Descarga un montón de ejemplos de la red, intenta compilarlos todos. En general, empezar a estudiar al azar (el método más común en nuestro país, sorprendente por su efectividad).

Escribe reseñas.
Rashid (también conocido como Rashn).

sitio web Estimados señores, con este artículo abro una nueva sección dedicada a la programación para iPhone, donde tocaremos temas que interesan tanto a principiantes como a no iniciados, así como a los gurús de ObjC, que, esperamos, no fallarán. para corregir nuestros errores con sus comentarios. La lección de hoy es sólo para fines informativos. Objetivos de la lección 1. Dónde empezar a programar para iPhone. 2.Kit de desarrollador para caballeros. 3.Hecho en casa...


Arriba