empieza a desarrollar aplicaciones en i os hoy

19
TUTORIAL BASICO Empieza a desarrollar aplicaciones en iOS hoy! Este tutorial te enseñara cómo: Usar Xcode para crear y gestionar un proyecto Identificar las piezas clave de un proyecto de Xcode Ejecute su aplicación en simulador de iOS Crear una interfaz de usuario básico en un (storyboard)guión gráfico Vista previa de la interfaz de usuario Adoptar Auto Layout para añadir flexibilidad a su interfaz de usuario Familiarizarse con Xcode Xcode incluye todo lo necesario para crear una aplicación en iOS. No sólo organiza los archivos que intervienen en la creación de una aplicación, proporciona editores para elementos de código y de interfaz, le permite construir y ejecutar su aplicación, e incluye un potente depurador integrado. Tómese unos minutos para familiarizarse con el espacio de trabajo de Xcode. Vamos a usar los controles identificados en la ventana de abajo a lo largo de este tutorial.

Upload: independent

Post on 10-Nov-2023

0 views

Category:

Documents


0 download

TRANSCRIPT

TUTORIAL BASICO

Empieza a desarrollar aplicaciones en iOS hoy!

Este tutorial te enseñara cómo:

• Usar Xcode para crear y gestionar un proyecto

• Identificar las piezas clave de un proyecto de Xcode

• Ejecute su aplicación en simulador de iOS

• Crear una interfaz de usuario básico en un (storyboard)guión gráfico

• Vista previa de la interfaz de usuario

• Adoptar Auto Layout para añadir flexibilidad a su interfaz de usuario

Familiarizarse con XcodeXcode incluye todo lo necesario para crear una aplicación en iOS. No sólo organizalos archivos que intervienen en la creación de una aplicación, proporciona editorespara elementos de código y de interfaz, le permite construir y ejecutar su aplicación, eincluye un potente depurador integrado.Tómese unos minutos para familiarizarse con el espacio de trabajo de Xcode. Vamosa usar los controles identificados en la ventana de abajo a lo largo de este tutorial.

Revisar el Codigo Fuente (Source Code)

La plantilla de vista individual Aplicación viene con un par de archivos de códigofuente que configurar el entorno de aplicación. La mayor parte del trabajo es realizadopor la función UIApplicationMain, que se llama de forma automática en el archivo deorigen main.m de su proyecto. La función UIApplicationMain crea un objeto deaplicación que pone en marcha la infraestructura para su aplicación para trabajar conel sistema iOS. Esto incluye la creación de un bucle de ejecución que ofrece eventosde entrada a su aplicación.Usted no tendrá que lidiar con el archivo de origen main.m directamente, pero esinteresante entender cómo funciona.Para ver el archivo de origen main.m1.Asegúrese el navegador de proyectos está abierta en el área de navegación.

2.Abra la carpeta Archivos de reparto en el navegador de proyectos, haga clic en eltriángulo desplegable al lado de él.

3. Seleccione main.m.Xcode se abre el archivo de origen en la zona principal del editor de la ventana.

El Archivo main.m y la Función de UIApplicationMain

La función principal de main.m llama a la función UIApplicationMain dentro de unapiscina autorelease.

@autoreleasepool { return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));}

La declaraciónautoreleasepool apoya la gestión de memoria para su aplicación.Recuento de referencia automático (ARC) hace que la gestión de memoria directa porconseguir el compilador no perder de vista quién es dueño de un objeto;autoreleasepool es parte de la infraestructura de gestión de memoria.

La llamada a UIApplicationMain crea dos componentes iniciales importantes de suaplicación:

• Una instancia de la clase UIApplication, llamado el objeto de la aplicación. Elobjeto de la aplicación gestiona el ciclo de eventos de aplicaciones y coordinaotros comportamientos de aplicaciones de alto nivel. La clase UIApplication,definido en el marco UIKit, no requiere que escribir ningún código adicional paraconseguir que haga su trabajo.

• Una instancia de la clase AppDelegate, llamado el delegado aplicación. Xcode

creado esta clase para usted como parte de la configuración de la plantilla devista individual Aplicación. El delegado aplicación crea la ventana donde seextrae el contenido de su aplicación y proporciona un lugar para responder a lastransiciones de estado dentro de la aplicación. El delegado aplicación es dondese escribe el código de nivel de aplicación personalizada. Como todas lasclases, la clase AppDelegate se define en dos archivos de código fuente en suaplicación: en el archivo de interfaz, AppDelegate.h, y en el archivo deimplementación, AppDelegate.m.

A medida que su aplicación se pone en marcha, el objeto de la aplicación llama a losmétodos predefinidos por el delegado aplicación para dar a su código personalizadola oportunidad de hacer su trabajo, que es cuando se ejecuta el comportamientointeresante para una aplicación.

Archivos Fuente del App Delegate

Para entender el papel del delegado aplicación en más profundidad, ver sus archivosde origen de aplicación delegadas, AppDelegate.h (el archivo de interfaz) yAppDelegate.m (el archivo de implementación). Para ver el archivo de interfaz deaplicación delegado, seleccione AppDelegate.h en el navegador de proyectos. Lainterfaz de aplicación delegado contiene una sola propiedad: Ventana. Con estapropiedad el delegado aplicación realiza un seguimiento de la ventana en la que latotalidad de su contenido de la aplicación se dibuja.A continuación, ver el archivo de implementación delegado aplicación seleccionandoAppDelegate.m en el navegador de proyectos. La implementación de aplicacionesdelegado contiene "esqueletos" de los métodos importantes. Estos métodospredefinidos permiten que el objeto de la aplicación de hablar con el delegadoaplicación. Durante un ejemplo de eventos de tiempo de ejecución significativa,aplicación de lanzamiento, las advertencias de poca memoria, y la aplicación de laterminación en el objeto de la aplicación llama al método correspondiente en eldelegado aplicación, dándole la oportunidad de responder adecuadamente. Usted notiene que hacer nada especial para asegurarse de que estos métodos consiguenllaman el objeto de tiempo de la aplicación correcta asas que parte del trabajo parausted.Cada uno de estos métodos implementados automáticamente tiene uncomportamiento predeterminado. Si sale de la aplicación esqueleto vacío o borre desu archivo AppDelegate.m, se obtiene el comportamiento por defecto cada vez que sellama ese método. Utilice estos esqueletos para poner código personalizado adicionalque desee que se ejecutará cuando los métodos son llamados. En este tutorial, ustedno va a utilizar cualquier código delegado aplicación personalizada, por lo que notiene que realizar ningún cambio en el archivo AppDelegate.m.

Abrir el Storiboard

Usted está listo para comenzar a trabajar en un guión gráfico para su aplicación. Unguión gráfico es una representación visual de la interfaz de usuario de la aplicación,que muestra pantallas de contenido y las transiciones entre ellos. Utilice guionesgráficos para diseñar el flujo o la historia-que impulsa su aplicación.Para abrir su guión gráfico

• En el navegador de proyectos, seleccione Main.storyboard. Xcode abre el guióngráfico en Interface Builder, su editor en el área de edición interfaz visual. Elfondo del guión gráfico es el lienzo. Se utiliza el lienzo para agregar y organizarelementos de la interfaz de usuario.

Su guión gráfico debe ser similar a esto:

En este punto, el guión gráfico en su aplicación contiene una escena, lo querepresenta una pantalla de contenido en su aplicación. La flecha que apunta hacia ellado izquierdo de la escena en el lienzo es el punto de entrada del guión gráfico, loque significa que esta escena se carga por primera vez cuando se inicia la aplicación.En este momento, la escena que se ve en el lienzo contiene una única vista que estágestionado por un controlador de vista.

Diseñando una Interfaz de UsuarioUn usuario tiene que interactuar con una interfaz de aplicación en la forma mássencilla posible. Diseño de la interfaz con el usuario en mente, y que sea eficiente,

claro y sencillo.Storyboards permiten diseñar e implementar la interfaz en un entorno gráfico. Ustedve exactamente lo que usted está construyendo, mientras que usted estáconstruyendo él, obtener retroalimentación inmediata sobre lo que funciona y lo queno lo es, y hacer los cambios instantáneamente visibles a su interfaz.

Cuando se genera una interfaz en un guión gráfico, como lo hizo en el Tutorial:Conceptos básicos, que está trabajando con vistas. Vistas mostrar contenido para elusuario. Ellos son los bloques de construcción para la construcción de su interfaz deusuario y la presentación de su contenido de una manera clara, elegante y útil. Amedida que desarrolla aplicaciones más complejas, vamos a crear interfaces con másescenas y más vistas.

Defininedo la Ineraccion

aplicaciones de iOS se basan en la programación orientada a eventos. Es decir, elflujo de la aplicación se determina por eventos: eventos del sistema y las acciones delusuario. El usuario realiza acciones en la interfaz, que desencadenan losacontecimientos en la aplicación. Estos acontecimientos dan lugar a la ejecución de lalógica y la manipulación de sus datos de la aplicación. La respuesta de la aplicaciónde la acción del usuario se refleja a continuación, de nuevo en la interfaz. Debido aque el usuario, en lugar de los desarrolladores, es el control de cuándo ciertas piezasdel código de aplicación se ejecutan, desea identificar exactamente qué acciones

puede realizar un usuario y lo que ocurre en respuesta a esas acciones.

Usted define gran parte de la lógica de control de eventos en los controladores devista. Los controladores son objetos que apoyan sus puntos de vista al responder alas acciones del usuario y llenar las opiniones con contenido. Objetos del controladorson un conducto a través del cual vistas interactúan con el modelo de datos. Vistasson notificados de los cambios en los datos del modelo a través de los controladoresde la aplicación, y los controladores se comunican cambios para iniciados por elusuario ejemplo, texto introducido en un campo a texto modelar objetos. Ya sea queestén respondiendo a las acciones del usuario o la definición de navegación,controladores de implementar el comportamiento de su aplicación.

View Controllers Después de que se ha construido una jerarquía básica vista, el siguiente paso es elcontrol de los elementos visuales y responder a la entrada del usuario. En unaaplicación de iOS, se utiliza un controlador de vista (UIViewController) para gestionaruna vista de contenido con su jerarquía de subvistas.

Un controlador de vista (View Controller)Un controlador de vista no es parte de lajerarquía de vista, y no es un elemento de la interfaz. En cambio, se las arregla losobjetos de vista de la jerarquía y les proporciona comportamiento. Cada contenido dejerarquía de vistas que se genera en su guión gráfico necesita un controlador de vistacorrespondiente, responsable de la gestión de los elementos de la interfaz y larealización de tareas en respuesta a la interacción del usuario. Esto generalmentesignifica escribir una subclase UIViewController personalizado para cada jerarquía devistas contenido. Si su aplicación tiene múltiples puntos de vista de contenido, utilizaruna vista personalizada clase controlador diferente para cada vista de contenido.

Ademas un controlador de vista se encarga de coordinan el flujo de información entreel modelo de datos de la aplicación y las vistas que muestran que los datos, gestionarel ciclo de vida de sus puntos de vista de contenido, y manejar la orientación cambiacuando se gira el dispositivo. Pero quizás su papel más obvio es responder a laentrada del usuario.También utiliza los controladores de vista de aplicar transiciones de un tipo decontenido a otro. Debido a que las aplicaciones de iOS tienen una cantidad limitadade espacio en el que se mostrará el contenido, los controladores de vista proporcionarla infraestructura necesaria para eliminar los puntos de vista de un solo controlador devista y reemplazarlos con las opiniones de los otros.Para definir la interacción en su aplicación, usted hace sus archivos de controlador devista se comunican con los puntos de vista en el guión gráfico. Esto se hace mediantela definición de las conexiones entre los archivos de storyboard y de código fuente através de acciones y puntos de venta.

AccionesUna acción es un pedazo de código que está vinculado a un evento que puede ocurriren su aplicación. Cuando ese evento se lleva a cabo, el código es ejecutado. Sepuede definir una acción para lograr cualquier cosa, desde la manipulación de unapieza de datos a la actualización de la interfaz de usuario. Utiliza las acciones paraimpulsar el flujo de su aplicación en respuesta a eventos de usuario o de sistema.Se define una acción mediante la creación y aplicación de un método con un tipo deretorno IBAction y un parámetro remitente.

- (IBAction)restoreDefaults:(id)sender;

El parámetro remitente al objeto de que era responsable de desencadenar la acción.El tipo de retorno IBAction es una palabra clave especial; es como la palabra clavevacía, sino que indica que el método es una acción que se puede conectar al de suguión gráfico en Interface Builder (por eso la palabra clave tiene el prefijo IB).

OutletsOutlets ofrecen una manera de hacer referencia a objetos: los objetos de interfazusted agrego a su storyboard(guión gráfico), desde los archivos de código fuente.Para crear una salida, control de arrastre de un objeto particular en el storyboard a unarchivo controlador de vista. Esta operación crea una propiedad para el objeto en elarchivo de controlador de vista, lo que le permite acceder y manipular dicho objetodesde el código en tiempo de ejecución. Por ejemplo, en el segundo tutorial, vamos acrear una salida para el campo de texto en su aplicación ToDoList para poder accedera los contenidos del campo de texto en el código.Outlets se definen como propiedades IBOutlet.

@property (weak, nonatomic) IBOutlet UITextField *textField;

La palabra clave IBOutlet dice Xcode que se puede conectar a esta propiedad desdeInterface Builder.

Tutorial StoryboardsEn este capitulo te pones a utilizar lo que ha aprendido acerca de las vistas, loscontroladores de vista, las acciones y la navegación. También vamos a crear algunosde los flujos de interfaz de usuario clave para su aplicación ToDoList y añadir elcomportamiento de la escena que ya ha creado.

La incorporación de los Datos

Después de implementar el comportamiento de su aplicación, se crea un modelo dedatos para apoyar la interfaz de su aplicación. Modelo de datos de una aplicacióndefine la forma de mantener los datos en su aplicación. Los modelos de datos puedenvariar de un diccionario básico de objetos a bases de datos complejas. Un buenmodelo de datos hace que sea más fácil construir una aplicación escalable, mejorarlas funciones, y hacer cambios a sus características.Modelo de datos de su aplicación se compone de sus estructuras de datos y(opcionalmente) lógica de negocios personalizada necesarios para mantener esosdatos en un estado coherente. Uno nunca quiere diseñar su modelo de datos en totalaislamiento de la interfaz de usuario de su aplicación. Usted, sin embargo, deseaimplementar su modelo de objetos de datos por separado, sin depender de lapresencia de puntos de vista específicos o controladores de vista. Si mantiene susdatos separados de su interfaz de usuario, usted encontrará que es más fácil deimplementar una aplicación de uno universal que puede funcionar tanto con iPad yiPhone, y más fácil de reutilizar partes de su código después.

El diseño de su modelo

Si usted sólo tendrá que almacenar una pequeña cantidad de datos, clases delframework Fundación puede ser su mejor opción. Clases de la Fundación deInvestigación existentes para ver qué comportamientos están disponibles para su usoen lugar de tratar de poner en práctica lo mismo por su cuenta. Por ejemplo, si suaplicación sólo tiene que seguir la pista de una lista de cadenas, usted puede confiaren NSArray y NSString para hacer el trabajo para usted. Usted aprenderá más sobreestas y otras clases de la Fundación en colaboración con la Fundación.Si su modelo de datos requiere de lógica de negocios personalizada además de losdatos que almacenan simplemente, puede escribir una clase personalizada.Considere cómo puede incorporar clases marco existentes en la aplicación de suspropias clases. Es beneficioso utilizar clases marco existentes dentro de sus clases

personalizadas en lugar de tratar de reinventar ellos. Por ejemplo, una clasepersonalizada podría utilizar NSMutableArray almacenar información, pero a definirsus propias funciones para trabajar con esa información.

Al diseñar su modelo de datos, hágase las siguientes preguntas:¿Cómo va el usuario utilice su aplicación, y qué tipos de datos no es necesarioalmacenar? Asegúrese de que su modelo refleja el contenido y el propósito de laaplicación. A pesar de que el usuario no interactúa con los datos directamente, nodebería haber una correlación clara entre la interfaz y los datos. Ya sea que estéalmacenar texto, documentos, imágenes de gran tamaño, u otro tipo de información,el diseño de su modelo de datos para manejar ese tipo particular de contenidocorrectamente.¿Qué estructuras de datos se puede utilizar? Determinar dónde se puede utilizarclases del framework y donde es necesario definir clases con funcionalidadpersonalizada.¿Cómo va a suministrar datos a la interfaz de usuario? Su modelo no debecomunicarse directamente con su interfaz. Para manejar la interacción entre elmodelo y la interfaz, tendrá que añadir lógica a sus controladores.

El uso de patrones de diseño

Un patrón de diseño resuelve un problema de ingeniería de software común. Lospatrones son diseños abstractos, no de código. Se utilizan para ayudarle a definir laestructura de su modelo de datos y su interacción con el resto de su aplicación.Cuando usted adopta un diseño, a adaptar su modelo general a sus necesidadesespecíficas. No importa qué tipo de aplicación que está creando, es bueno conocerlos patrones de diseño fundamentales utilizados en los marcos. La comprensión delos patrones de diseño le ayuda a utilizar los marcos más eficaz y le permite escribiraplicaciones que son más reutilizables, más extensible, y más fácil de cambiar.

MVCModelo-Vista-Controlador (MVC) es fundamental para un buen diseño para cualquieraplicación de iOS. MVC asigna los objetos en una aplicación para uno de los trespapeles: modelo, vista o controlador. En este modelo, los modelos de seguimiento delos datos de su aplicación, vistas muestran la interfaz de usuario y constituyen elcontenido de una aplicación, y los controladores gestionar sus puntos de vista. Alresponder a las acciones del usuario y llenar opiniones con contenido desde elmodelo de datos, controladores sirven como puerta de entrada para la comunicaciónentre el modelo y las vistas.

Como usted ha construido su aplicación ToDoList, has seguido un diseño MVC-céntrica. La interfaz que construiste en storyboards conforma la capa de vista.AddToDoItemViewController y ToDoListTableViewController son los controladoresque gestionan sus puntos de vista. En Tutorial: Agregar datos, se le incorporando unmodelo de datos para trabajar con las vistas y los controladores en su aplicación.

Target-Acción

Ya ha utilizado meta-acción en su aplicación ToDoList. Cuando un usuario pulsa elbotón Guardar en la AddToDoItemViewController, se dispara la unwindToList: acción.En este caso, el botón Guardar es el objeto de enviar el mensaje, el objeto de destinoes el ToDoListTableViewController, el mensaje de acción es unwindToList :, y elevento que desencadena el mensaje de acción para ser enviado es un usuariopulsando el botón Guardar. Target-acción es un poderoso mecanismo para ladefinición de la interacción y el envío de información entre las diferentes partes de suaplicación.

DelegaciónLa delegación es un patrón simple y de gran alcance en el que un objeto en unaaplicación actúa en nombre de, o en coordinación con otro objeto. El objeto delegarmantiene una referencia a otro objeto el delegado y en el momento apropiado, elobjeto delegar envía un mensaje al delegado. El mensaje informa al delegado de unevento que el objeto delegar está a punto de manejar o simplemente ha manejado. Eldelegado puede responder al mensaje mediante la actualización de la aparición (oestado) de sí mismo o de otros objetos de la aplicación, y en algunos casos sedevolverá un valor que afecta a cómo se maneja un evento inminente.

El patrón delegado es frecuente en las clases framework existente, pero también sepuede aplicar delegación entre dos objetos personalizados en una aplicación. Undiseño común utiliza delegación para permitir que un controlador de vista del niñopara comunicarse un valor (típicamente un valor introducido por el usuario) a sucontrolador de vista de los padres.No ha trabajado con la delegación, sin embargo, pero en Tutorial: Agregar datos,podrás ver un ejemplo de que cuando se agrega un comportamiento adicional a suclase ToDoListTableViewController.

Trabajando con la Fundación

Al comenzar a escribir código Objective-C para su aplicación, usted encontrarámuchos marcos que usted puede aprovechar. De particular importancia es el marcode la Fundación, que proporciona los servicios básicos para todas las aplicaciones. Elmarco de la Fundación incluye clases de valor que representan los tipos de datosbásicos como cadenas y números, así como clases de colección para almacenarotros objetos. Se le confiando en las clases de valor y cobro de escribir gran parte delcódigo de su aplicación ToDoList.

iOS TecnologíasUsted acaba de aprender cómo escribir una aplicación con una interfaz de usuariosencilla y comportamiento básico. En este punto, usted puede estar pensando enimplementar un comportamiento adicional que dará vuelta a su proyecto en unaaplicación con todas las funciones.Al considerar que cuenta que desea agregar, recuerde que usted no tiene que poneren práctica todo desde cero. iOS ofrece marcos que definen conjuntos particulares defuncionalidad de los juegos y medios de comunicación para la seguridad y la gestiónde los datos que se pueden integrar en su aplicación. Usted ya ha utilizado el marcoUIKit para diseñar la interfaz de usuario de su aplicación, y el marco de la Fundaciónpara incorporar estructuras de datos comunes y el comportamiento en el código.Estos son dos de los marcos más comunes utilizados en el desarrollo de aplicacionesde iOS, pero hay muchos más disponibles para usted.

Este capítulo es una descripción de alto nivel de las tecnologías y los marcos queusted podría considerar la adopción en su aplicación. Utilice este capítulo como puntode partida para posibles tecnologías para explorar. Para una descripción completa delas tecnologías disponibles en iOS, consulte iOS Descripción de la tecnología.

Interfaz de usuario

UIKit. Clases marco UIKit permiten crear una interfaz de usuario basada en elcontacto. Debido a que todas aplicaciones de iOS se basan en UIKit, no se puedeenviar una aplicación sin este marco. UIKit proporciona la infraestructura para eldibujo a la pantalla, la gestión de eventos, y la creación de elementos de la interfaz deusuario común. UIKit también organiza una aplicación compleja gestionando elcontenido que se muestra en pantalla. Ver UIKit Marco de Referencia.Gráficos Core. Core-a gráficos de bajo nivel, con sede en C-marco es el caballo debatalla para el manejo de gráficos de alta calidad vector, dibujo basado en ruta, lastransformaciones, las imágenes, la gestión de datos, y más. Por supuesto, la formamás sencilla y eficaz de crear gráficos en iOS es utilizar imágenes prerendered conlas vistas estándar y controles del marco UIKit, dejando iOS hacer el dibujo. DebidoUIKit, un marco de nivel superior, también ofrece clases de dibujo personalizado,incluyendo caminos, colores, patrones, degradados, imágenes, texto ytransformaciones usarlo en lugar del núcleo de gráficos siempre que sea posible. VerCore Gráficos Referencia Marco.Core Animation. Interfaces de Animación Core son parte del marco de cuarzo Core.Utilice Core Animation para hacer animaciones avanzadas y efectos visuales. UIKitofrece animaciones que se construyen en la parte superior de la tecnología CoreAnimation. Si necesitas animaciones avanzadas más allá de las capacidades deUIKit, utilice directamente Core Animation. Puede crear una jerarquía de objetos decapa que manipula, rotar, escalar, transformar, y así sucesivamente. Familiarizadosabstracción vista como el de Core Animation le permite crear interfaces de usuariodinámicas sin tener que utilizar las API de gráficos de bajo nivel, tales como OpenGLES. Consulte la Guía de Programación Core Animation.

DatosDatos Básicos. El marco de Datos Básicos gestiona modelo de datos de unaaplicación. Se usa para crear objetos de modelo, conocidos como objetosgestionados. Usted maneja las relaciones entre los objetos y realizar cambios en losdatos a través del marco. Datos Básicos se aprovecha de la tecnología SQLiteintegrada para almacenar y gestionar los datos de manera eficiente. Ver Core DataMarco de Referencia.Fundación. Usted trabajó con la Fundación anteriormente en esta guía. El marcoFundación define un conjunto de clases base útiles. Entre otras cosas, este marcoincluye clases que representan los tipos de datos básicos, tales como cadenas ynúmeros, y clases de colección para almacenar otros objetos. Ver Fundación Marco

de Referencia.

MediosFundación AV. Fundación AV es uno de varios marcos que se pueden utilizar parajugar y crear medios audiovisuales basados en el tiempo. Por ejemplo, utiliceFundación AV para examinar, crear, editar archivos, o medios reencode. Tambiénpuede utilizar para obtener los flujos de entrada de los dispositivos y manipular vídeodurante la captura en tiempo real y la reproducción. Ver AV Fundación Marco deReferencia.

A dónde ir desde aquí

En comenzar a desarrollar aplicaciones de iOS Hoy en día, usted aprendió losfundamentos del desarrollo de aplicaciones iOS. En este punto, usted está listo paracomenzar a desarrollar su primera aplicación con todas las funciones. Aunqueteniendo una aplicación de un concepto simple de la App Store no es una tarea fácil,el proceso y las prácticas que has aprendido en este documento se le guiarán en ladirección correcta.

Aquí están algunas sugerencias más sobre dónde ir desde aquí:Registrarse como desarrollador. Administración de cuentas le guía por el proceso deregistro como desarrollador de Apple.Aprende a diseñar interfaces de aplicaciones hermosas. Human Interface Guidelines

iOS te enseña cómo hacer que su aplicación consistente con las convenciones deinterfaz de usuario para iOS. Guía de Auto Layout te enseña cómo crear interfaces deusuario versátiles adaptativas.Aprenda el lenguaje Objective-C. Programación con Objective-C se describe cómodefinir clases, enviar mensajes, encapsulan datos y lograr una variedad de otrastareas con el lenguaje de programación Objective-C.Aprender a desarrollar aplicaciones muy buenas. Guía de programación deaplicaciones para iOS explica las cosas esenciales que usted debe saber y hacer enel desarrollo de una aplicación para iOS.Más información sobre las tecnologías disponibles para usted. iOS Descripción de latecnología se describen los marcos y otras tecnologías que están disponibles para suaplicación en iOS.Acceder a la documentación. Búsqueda de información que muestra cómo hacer lamayor parte de la documentación disponible para usted.Depurar y probar su aplicación. Depurar su aplicación te enseña a fondo depurar yprobar su aplicación en Xcode.Envíe su aplicación. Guía de distribución de aplicaciones le guiará por el proceso deaprovisionamiento de dispositivos para las pruebas y la presentación de aplicacionesa la App Store.

Tomando la App ToDoList al siguiente nivel

La lista de aplicaciones de tareas que acaba de crear se beneficia de numerosasconductas incorporadas. Puede seguir experimentando con esta aplicación paramejorar su comprensión, o puede empezar algo nuevo. Si continúa con la lista deaplicaciones de tareas, aquí hay algunas áreas para investigar:Su lista de tareas desaparece al salir y relanzar la aplicación. Es posible que deseeexplorar maneras de hacer la lista de persistir en el tiempo.Usted está utilizando la apariencia por defecto para todos los controles en suaplicación. UIKit incluye características para personalizar la apariencia de muchoscontroles. Explora diferentes opciones de interfaz de usuario que utilizan estatecnología.Usted ha dado al usuario una forma de añadir elementos a la lista y marcarlos comocompletada, pero no hay instalaciones para la eliminación de elementos. Vistas detabla se han incorporado en el comportamiento de apoyo a la edición, incluido elborrado y reordenación de filas, que usted podría considerar la incorporación en suaplicación.A medida que continúe el desarrollo de aplicaciones de iOS, encontrará muchosconceptos y tecnologías para explorar, incluyendo la localización, accesibilidad ypersonalizar la apariencia. Comience por definir una dirección que le interesa.Recuerde poner en práctica los conceptos a medida que los aprende. Cuando seencuentre con una nueva tecnología interesante, marco, o patrón de diseño, notengas miedo de escribir una pequeña aplicación para probarlo.Al adoptar el enfoque se muestra en este documento, usted encontrará que ustedenvía su primera aplicación rápidamente. Después de tener una aplicación en la App

Store, puede continuar para incorporar características adicionales de formaincremental. Siempre hay nuevas maneras de mantener a sus clientes comprometidosy que miran con interés la próxima gran cosa.