Xcode 5 es un gran paso adelante para el ecosistema de Apple, que ofrece más posibilidades, características y herramientas para los desarrolladores que nunca antes. Con la Versión 5, Xcode se ha convertido en un IDE extremadamente poderoso. Lee este artículo para saber qué hay de nuevo.!
Xcode 5 está lleno de mejoras y adiciones, tanto grandes como pequeñas. Todos estos cambios proporcionan una enorme asistencia a los desarrolladores. Los cambios comienzan en la interfaz, donde el estilo de look-and-feel actualizado se ajustó para encajar en el nuevo ecosistema de iOS 7. Con solo dar una vuelta, notarás una serie de modificaciones estilísticas, comenzando en la pantalla de bienvenida..
Las nuevas adiciones son evidentes al usar Xcode, y una vez que trabaje con él por un tiempo, descubrirá que en esta versión Apple se enfoca en dos puntos principales. El primer objetivo es liberar a los desarrolladores de varias tareas de configuración relacionadas con sus aplicaciones. El otro objetivo es elevar la depuración y las pruebas a un nivel completamente nuevo y proporcionar a los desarrolladores herramientas útiles que faciliten y hagan más efectivas estas tareas..
Todas las nuevas características se le presentarán de inmediato. En resumen, aquí hay una lista de todas las funciones nuevas o con cambios esenciales que encontrará en este tutorial:
Habilitar un servicio de Apple en una aplicación siempre fue una tarea que requería una cierta cantidad de pasos que el desarrollador debería realizar hasta que la aplicación esté completamente configurada y funcionando. Los marcos deben estar vinculados al proyecto, los derechos deben agregarse a la ID de la aplicación, las claves deben agregarse en el archivo * .plist y todas las tareas deben realizarse de acuerdo con los requisitos del servicio. Los muchos pequeños pasos hicieron de este un proceso difícil..
Xcode 5 elimina la molestia de hacer todo lo anterior a los desarrolladores, gracias a la Configuracion automatica característica. Con la Configuración automática, el único requisito para los desarrolladores es su ID de Apple (asociada a un programa de desarrollador). Luego, Xcode habilita y configura automáticamente cualquier servicio que los desarrolladores deseen, vinculando marcos, administrando derechos y haciendo todo lo necesario para que un servicio funcione. Los desarrolladores realmente no necesitan hacer nada más, aparte de seleccionar los servicios que les encantaría ver en sus aplicaciones. Incluso los perfiles de aprovisionamiento pueden crearse opcionalmente automáticamente con la configuración adecuada. Esta es una característica impresionante para los desarrolladores!
Echemos un vistazo más detallado a la configuración automática..
Es sencillo asignar su ID de Apple dentro de Xcode. Simplemente abierto Menú Xcode> Preferencias…> Cuentas. La pestaña Cuentas es una nueva característica en Xcode 5.
En la parte inferior izquierda de la ventana de Preferencias hay tres botones: un signo más, un signo menos y un signo de engranaje. Haga clic en el Signo más> Añadir ID de Apple ... opción. En el formulario que aparece, proporcione su ID de Apple y su contraseña y haga clic en Añadir.
Si todo sale según lo planeado, el ID de Apple que acaba de agregar debe aparecer en el lado izquierdo de la ventana. En el lado derecho, si selecciona su ID y hace clic en el Ver detalles Botón, aparece otra ventana en la pantalla..
Este contiene todas sus identidades de firma y perfiles de aprovisionamiento. Puede crear, eliminar o revocar identidades de firma usando los botones apropiados debajo del área de identidades de firma. También con el botón de actualización en la parte inferior de la ventana, puede actualizar todos los cambios que realice en línea en sus perfiles de aprovisionamiento.
Para eliminar una ID de Apple, simplemente seleccione la ID correspondiente de la lista en las Cuentas y haga clic en el botón Menús en la parte inferior izquierda de la misma.
los Capacidades La pestaña permite automáticamente que los servicios de Apple sean configurados. Esta característica se puede encontrar si hace clic en su proyecto en el Navegador de proyectos.
Como se ve en la figura, es solo cuestión de habilitar o deshabilitar un botón de interruptor. Las capacidades proporcionan soporte de configuración automática para los siguientes servicios:
Si amplía cualquiera de estos, aparecerá una descripción del servicio seleccionado e información sobre las acciones. Por ejemplo, si amplía el Centro de juegos aparece la siguiente figura, indicando que el derecho de "Game Center" se agregó a la ID de la aplicación, la clave "GameKit" se agregó al archivo de información y el marco de GameKit se vinculó a su proyecto. Estas son acciones y pasos que puede hacer manualmente, ¡pero ahora Xcode puede hacerlo automáticamente en su nombre! Si así lo eliges, puedes seguir haciéndolo por tu cuenta, pero Xcode te ahorra tiempo..
En el General pestaña (la que está a la izquierda de la pestaña Capacidades), dentro de la Identidad sección, hay la Equipo Menú desplegable. Si agregó exitosamente su ID de Apple en Xcode, haga clic para seleccionar un equipo de desarrollo exactamente como aparece en iTunes Connect. Para los desarrolladores que juegan solo, solo aparece su nombre completo. Si desea que la Configuración automática funcione correctamente para usted, le recomiendo que seleccione su equipo (o nombre) antes de habilitar cualquier servicio en la pestaña Capacidades. En caso de que dejes el valor de Equipo a Ninguna, Luego, cuando intenta habilitar un servicio, Xcode le pedirá que seleccione su equipo..
Basado en el ID de Apple en la pestaña Cuentas de las preferencias de Xcode, la configuración de identidad de firma y la configuración de Capacidades, Xcode puede crear nuevos perfiles de aprovisionamiento para usted, utilizando la configuración adecuada, en lugar de hacerlo manualmente. Además, las correcciones se aplican a los perfiles de aprovisionamiento existentes con problemas.
Para recapitular, la Configuración automática le ahorra algunos trabajos manuales exigentes al hacer muchos pasos por usted. Sin embargo, aún puede crear y configurar todo manualmente como tradicionalmente lo ha hecho, o puede realizar algunos pasos por su cuenta y dejar que otros se realicen automáticamente mediante Xcode. Es una gran característica, úsala a tu voluntad..
Los sistemas de control de fuente y versión siempre son útiles, y son obligatorios para proyectos que tienden a crecer y son desarrollados por un equipo de programadores. Incluso los desarrolladores de usuarios independientes deben adoptar el hábito de usar un sistema de control de fuente porque es una gran herramienta, especialmente cuando se trata del seguimiento de cambios de código. Un sistema de control de fuente le permite realizar un seguimiento de los cambios de código y volver a una versión más estable cuando sea necesario. Para el desarrollo en equipo, es genial porque permite a cada desarrollador construir una parte del proyecto, simplemente creando una copia del mismo (rama) y sin interferir con el código de otros desarrolladores. Cuando varias piezas del proyecto están listas, se pueden juntar (fusionar) en una versión de código de trabajo. Además, en los casos en que aparecen demasiados errores, los desarrolladores pueden volver a una versión más estable y rastrear los cambios de código, simplemente comparando dos versiones del mismo archivo.. Git es un sistema de control de origen.
Xcode 5 le da especial gravedad al control de la fuente. En Xcode 4.6, el control de la fuente se puede encontrar bajo la Expediente menú. En la versión 5, el control de fuente tiene su propio menú de nivel superior en la barra de menú de Xcode.
Como puede ver en la figura, en este menú puede ver directamente el proyecto actual en el que está trabajando y acceder a ciertas operaciones, como Cometer, empujar, Nueva sucursal, Cambiar a rama, Fusionar desde rama, y muchos más. Es realmente fácil y rápido acceder al sistema de control de origen y mantener los cambios que desee en sus repositorios.
Hablando de repositorios, puede acceder a ellos directamente al iniciar Xcode, incluso desde la pantalla de bienvenida, simplemente haciendo clic en Echa un vistazo a un proyecto existente opción.
Navegar a la Revisa formulario, donde puede ver una lista de todos sus repositorios, sus favoritos o los más recientes. Alternativamente, puede escribir una ubicación donde se pueda encontrar un repositorio.
Otra opción útil con respecto al control de fuente y Xcode 5 es la La culpa de esta línea operación bajo el Editor menú. Esta opción muestra información de comentarios sobre la línea actual en la que se encuentra el cursor e indica quién realizó el último comentario. Esto es especialmente útil en proyectos de equipo porque facilita la búsqueda del desarrollador que modificó el código por última vez..
Tenga en cuenta que si intenta usar la opción Culpa sin cometer al menos uno de sus archivos utilizando el menú de control de fuente, no se le mostrará ninguna información..
Como muchos otros aspectos de Xcode, el control de fuente también es configurable. Ir Xcode> Preferencias…> Control de fuente Para acceder a la configuración de la misma. Si lo desea, puede deshabilitar completamente el control de código fuente de su proyecto (pero se recomienda no hacerlo). Configure las opciones según sus preferencias y trabaje en su entorno personalizado.
Si no está utilizando Source Control al desarrollar aplicaciones, le recomendamos encarecidamente que comience a hacerlo. Notará que mantener las versiones de sus archivos, volver a las versiones anteriores o compararlas es un proceso que puede ahorrarle mucho tiempo cuando intenta localizar los errores en su código..Interface Builder, el diseñador de GUI de Xcode, no parece tener muchos cambios aparentes, a excepción de la cuadrícula que falta y la actualización estética general. Sin embargo, una característica importante que se agregó en esta versión de Xcode es la capacidad de avance la configuración de la interfaz para versiones de iOS iguales o anteriores a 6.1. Se rediseñaron todos los elementos gráficos (subvistas) y los desarrolladores necesitan saber si la posición, el tamaño o el diseño de los subvistas funcionan tanto para iOS 7 como para las versiones anteriores de iOS.
Para usar la función de vista previa en Interface Builder, al principio muestre el Editor asistente.
Si Xcode muestra automáticamente cualquier archivo que contenga código en el Editor asistente, localice y abra el archivo .xib o el guión gráfico que desea ver de forma manual, como se muestra en la siguiente figura..
Una vez que haya abierto el archivo GUI tanto en el Editor estándar como en el Asistente, haga clic en el Botón Archivos relacionados> Vista previa> Tu archivo del editor asistente.
Observe un marco en la parte inferior derecha de la pantalla, donde dice iOS 7.0 y versiones posteriores. Haga clic en él, seleccione la iOS 6.1 y anteriores Opción y tendrás la vista previa lista.
La vista previa es una herramienta útil para los desarrolladores que desean mantener la compatibilidad con versiones anteriores en sus aplicaciones y para admitir versiones anteriores de iOS. Entonces, si su aplicación no solo es compatible con iOS 7, úsela cuando diseñe su interfaz.
Hablemos de la Autolayout característica ahora Autolayout no es algo nuevo en iOS 7, pero en Xcode 5 fue rediseñado desde cero, dando a los desarrolladores la máxima libertad para establecer y cambiar restricciones. Eso significa que puede establecer las restricciones que desee, de la forma que desee (incluso eliminarlas) sin una intervención automática de Xcode. Le avisará si faltan o hay restricciones que no coincidan, pero le permitirá hacer lo que quiera sin limitaciones..
En contradicción con las versiones anteriores de Xcode, en la Versión 5 se agregó una nueva subvista a una vista que no incluye ninguna restricción. Esto permite a los desarrolladores decidir qué restricciones necesitan. Además, las nuevas opciones para establecer restricciones están disponibles en el marco inferior derecho del Generador de Interfaz (alternativamente, en el Editor Menú), que puede usar para establecer valores personalizados y ciertas restricciones o para permitir que Xcode configure automáticamente el diseño para usted.
Cuando configura restricciones y Xcode detecta que existe alguna ambigüedad o problema, colorea las líneas de restricción en rojo en lugar de azul. Permanecen así hasta que se resuelven todos los problemas relacionados con la subvista problemática. Aquí hay un ejemplo donde faltan restricciones y Xcode nos advierte de usar el color de línea:
Xcode también muestra las advertencias o los errores sobre las restricciones que faltan o las vistas mal colocadas en la Esquema del documento, Junto a la vista que existen inconsistencias. Para examinar cuál es el problema, simplemente haga clic en la pequeña flecha amarilla o roja que aparece justo al lado de la vista, y aparece una lista de todos los problemas de diseño. La forma más fácil de solucionarlo es haciendo clic en cada advertencia o señal de error que aparece, y mediante una lista de soluciones sugeridas y posibles que proporciona Xcode, para seleccionar la más adecuada de acuerdo con sus necesidades. La otra forma es seguir jugando con las restricciones de la vista o las vistas que causan los problemas, hasta que logre silenciar todas las advertencias o errores..
Como consejo, recomiendo que cuando use el Actualizar restricciones, Añadir restricciones que faltan, o Restablecer restricciones restringidas opciones para permitir que Xcode configure automáticamente todas las restricciones que no necesita tocar manualmente. Esas opciones se pueden encontrar en el menú. Editor> Resolver problemas de diseño automático o en el botón respectivo que aparece en la parte inferior derecha del área de dibujo de Interface Builder.
Catálogo de Activos Es otra característica nueva de Xcode 5 con doble propósito:
Con Asset Catalog, no tiene que recordar las reglas que se aplican al ícono de la aplicación o iniciar el nombramiento de imágenes. Los activos con este tipo de imágenes ahora pueden tener el nombre que desees. Xcode acepta todo y automáticamente les da el nombre apropiado. Además, Asset Catalog consiste en el mejor lugar para reunir sus imágenes y acceder a todas ellas de una vez cuando sea necesario..
Catálogo de activos se representa como una grupo con un icono de carpeta azul en la lista de sus grupos y archivos en el Project Navigator.
Nota: Si crea un nuevo proyecto de aplicación iOS 7 en Xcode, el Catálogo de Activos está en su lugar. Sin embargo, si mueve un proyecto existente a iOS 7, deberá crear el Catálogo de activos por su cuenta. Esto es fácil de hacer. En el General pestaña de tu proyecto, dentro de la Iconos de aplicaciones En la sección hay un botón con título. Usar el Catálogo de Activos. Pincha sobre él y los formularios del catálogo..
Si hace clic en el ícono del Catálogo de recursos en el Navegador de proyectos, verá una serie de espacios vacíos en espera de aceptar los íconos de la aplicación. La función Catálogo de activos muestra ranuras para todos los dispositivos de destino que configuró en su proyecto. Para agregar el ícono de una aplicación, simplemente puede arrastrar y soltar uno de un directorio en su computadora a la ranura correspondiente. La misma regla se aplica también a las imágenes de inicio, donde hay ranuras vacías para todos los dispositivos y la orientación compatible que tiene en las opciones del proyecto. Una vez más, le recordaré que los iconos de aplicaciones y las imágenes de lanzamiento pueden tener el nombre que desee; Xcode establece los apropiados automáticamente.
Cualquier otra imagen que desee agregar a una aplicación se puede colocar fácilmente en el Catálogo de Activos, simplemente arrastrándola y soltándola allí. Si ya hay imágenes en su proyecto, esta es la manera más rápida de moverlas desde Project Navigator al Catálogo de Activos:
Una vez que las imágenes se importan o se agregan directamente desde su computadora, notará que dentro del Catálogo de Activos hay un registro para cada imagen. Si hace clic en cualquiera de ellos, verá que hay dos ranuras asociadas con él. El primero acepta la imagen de resolución normal (1x) y el segundo acepta la imagen de resolución de pantalla retina (2x).
La depuración en Xcode 5 ofrece una nueva experiencia para los desarrolladores, ya que se agregaron nuevas funciones al depurador. Rastrear valores de variables es más fácil. La vista previa de imágenes, documentos y otros objetos ahora es solo una cuestión de un solo clic, y se produce una gran flexibilidad cuando se trabaja con puntos de interrupción. El depurador en Xcode 5 se basa en el LLDB motor, que sustituye totalmente a la gdb motor. LLDB es más potente y subyace a todas las nuevas características de depuración. Así que echemos un vistazo a las mejoras..
La primera gran mejora visual existe en consejos de datos. Una sugerencia de datos muestra el valor de una variable durante la depuración, cuando el puntero del mouse se desplaza sobre la variable. Para variables de tipo de datos simples, la sugerencia de datos muestra simplemente el valor, como en la siguiente figura:
Con respecto a los objetos, las sugerencias de datos proporcionan información resumida para cada objeto que se desplaza, pero el cambio más importante es que ahora se puede mostrar más que texto. Las imágenes, los documentos de texto, las curvas de Bezier y más pueden previsualizarse en Xcode durante la depuración, por lo que es más fácil para los desarrolladores examinar sus objetos y estar seguros de su contenido. La combinación de datos y gráficos proporciona una gran flexibilidad al tratar de encontrar errores, ya que tanto las variables individuales como los objetos se pueden previsualizar a la vez. ¡Esta es una gran característica que reduce el tiempo de depuración! Echa un vistazo ahora a la siguiente imagen para ver un ejemplo:
Junto a cada objeto que puede previsualizar, al igual que en la imagen anterior, un ojo y un info Se muestran los botones. Puede obtener una vista previa (funcionalidad de vista rápida) del objeto seleccionado haciendo clic en el botón del ojo. También puede ver información detallada haciendo clic en el botón de información.
Aparte de los consejos de datos, puntos de interrupción Se mejoraron también. Si previamente depuró un proyecto, entonces sabe que los puntos de interrupción se pueden establecer simplemente haciendo clic en el lado izquierdo de las líneas donde desea que estén. Los puntos de interrupción pueden habilitarse o inhabilitarse haciendo clic en cada uno de ellos o usando el botón de puntos de interrupción. Con Xcode 5 esto ya no existe en la barra de herramientas superior, pero se ha movido a la barra de herramientas de depuración en la parte inferior de la ventana de Xcode. Con este botón, puede alternar todos los puntos de interrupción a la vez. Los puntos de interrupción habilitados se muestran en azul, y los puntos de interrupción deshabilitados se muestran en gris. Para eliminar completamente un punto de ruptura, haga clic derecho en él y seleccione la Eliminar punto de interrupción opción.
En Xcode 5 los puntos de corte funcionan condicionalmente. Además, las acciones se adjuntan a ellos cuando se cumple una condición. De esa manera, los desarrolladores no tienen que establecer y desactivar puntos de interrupción todo el tiempo, solo necesitan agregar condiciones o seleccionar puntos de interrupción para ignorarlos en ciertos momentos y centrarse más en la depuración. Las acciones proporcionadas que están disponibles y se pueden adjuntar a un punto de ruptura cuando se cumple una condición se enumeran a continuación:
Se puede establecer más de una acción en puntos de interrupción cuando se cumplen las condiciones. Por ejemplo, puede registrar un mensaje y, al mismo tiempo, reproducir un sonido que le notifique sobre la condición de los puntos de interrupción. Aquí hay un ejemplo:
Por lo tanto, cuando se utilizan estas nuevas funciones, la depuración se vuelve mucho más fácil. El código de buggy se puede rastrear más rápido y el tiempo perdido ahora se puede guardar y asignar a otras tareas. En combinación con la próxima nueva característica, la depuración se convierte en una experiencia completamente nueva.!
Hace mucho tiempo, cuando los recursos del sistema (como la CPU y la memoria) estaban limitados en un sistema informático, los programadores tenían que dedicar una gran cantidad de tiempo a asegurarse de que sus programas funcionaran con la menor cantidad de recursos posible. Esa fue una tarea difícil, pero fue la mejor manera de garantizar que no existieran pérdidas de memoria o que se haya producido un uso inútil de la CPU. Hoy en día, con los nuevos subsistemas potentes y rápidos que utilizan los dispositivos, es bastante común que los desarrolladores ignoren cualquier pérdida que causen sus aplicaciones, porque simplemente ven que sus aplicaciones se ejecutan bastante rápido en los dispositivos modernos. Sin embargo, los recursos siempre son limitados, y al ignorarlos, un posible bloqueo de la aplicación definitivamente llevaría a una mala experiencia de usuario.
Aquí es donde Calibradores de depuración haga su debut, llegando como herramientas auxiliares de depuración que permiten a los desarrolladores rastrear el uso no deseado de los recursos del sistema. En realidad, los indicadores de depuración consisten en una versión ligera de algunos Instrumentos Las herramientas están integradas en Xcode (no es necesario abrirlas en una ventana nueva como Instrumentos) y, sobre todo, pueden ejecutarse todo el tiempo junto con la aplicación durante la depuración. Los medidores le permiten observar los siguientes recursos:
Los indicadores de depuración son accesibles a través de Navegador de depuración, y aparecen cuando se ejecuta una aplicación. Los grandes elementos gráficos representan cada recurso que se ve, por lo que es fácil de usar.
Por supuesto, para obtener un perfil completo y detallado de su aplicación, puede utilizar los instrumentos cuando lo necesite. Un botón en el que puede hacer clic para abrir Instrumentos a la vez está siempre en la parte superior derecha de la ventana de indicadores. Cuando se ejecuta una aplicación, puede hacer clic de un indicador a otro y observar todas las mediciones que se realizan en tiempo real. Si observa algún comportamiento anormal, puede sospechar que algo está mal en su código y necesita ser reparado..
Se recomienda utilizar estas herramientas tanto como sea posible para detectar y corregir errores..
Las pruebas son una parte importante en el proceso de desarrollo, y siempre se debe prestar especial atención. Afortunadamente con Xcode 5, las aplicaciones de prueba son mucho más fáciles. Particularmente con el nuevo Navegador de prueba. Test Navigator se puede encontrar en el panel del navegador, y enumera todas las pruebas que creas.
A través del navegador, las pruebas se pueden editar, ejecutar o eliminar fácilmente. Al lado de cada prueba se muestra su estado actual, ya sea que haya tenido éxito, haya fallado o no se haya ejecutado todavía. También se dio una gran flexibilidad a la forma en que se ejecutan las pruebas. Por lo tanto, puede iniciar una sola prueba, seleccionar un grupo de ellas o dejar que se ejecuten simultáneamente..
Se introdujo un nuevo marco de prueba de unidad en Xcode 5, el XCTest, que existe en paralelo con el marco anterior, el OCUnidad. Sin embargo, el primero dominará el futuro. Por lo tanto, se recomienda utilizar el XCTest en sus proyectos. Por defecto, los nuevos proyectos usan este marco. Además, en Xcode 5, el código probado y la prueba en sí pueden colocarse lado a lado usando el Editor Asistente. De esa manera, puedes ver el código y los detalles de la prueba mientras se ejecuta.
Bots son una característica completamente nueva en Xcode 5. Un bot es un servicio, que en repetidas ocasiones realiza una serie de tareas, como compilar, probar, analizar, archivar y firmar una aplicación (tareas que tradicionalmente se realizarían manualmente por los desarrolladores). Estas series de tareas se llaman proceso de integración. Con los bots, el proceso de integración es automático y puede continuar durante el tiempo que sea necesario.
Lo que hace que los bots sean especiales es que, en lugar de ejecutar pruebas en la computadora local, pueden mover esas pruebas a un servidor y realizar el proceso de integración allí. De esa manera, las computadoras utilizadas para el desarrollo no se encargan de las tareas de ejecución de pruebas y, además, los resultados de las pruebas se pueden compartir a todo el equipo de desarrollo a la vez. Además, los bots pueden ejecutar múltiples pruebas para múltiples aplicaciones en dispositivos conectados al servidor.
Los bots pueden configurarse para funcionar de dos maneras. De acuerdo con la primera forma, los robots realizan el proceso de integración en el código que se toma de un sistema de control de origen como Git. Cuando hay nuevos cambios disponibles, los robots inician el proceso de integración y continúan hasta que la aplicación se completa y ya no se necesitan más pruebas. Estos bots se llaman continuo. La segunda forma es que el proceso de integración se repita lo antes posible. Los bots que están configurados para trabajar de esta manera son llamados nocturno o bots periódicos, y firman y archivan la aplicación en cada paso de reproducción, con un resultado más, para realizar un seguimiento de la historia durante el tiempo.
Para los equipos en desarrollo, los bots consisten en una excelente manera de realizar pruebas y compartir los resultados. Además, a través de las extensas pruebas que se realizan debido al proceso de integración continua, encontrar errores y errores es mucho más fácil, mientras que al mismo tiempo debido a la naturaleza de las pruebas, los errores se pueden aislar o ubicar con respecto a hardware específico u otras configuraciones. . Los bots son un tremendo salto para Xcode.!
Hasta ahora, todas las características nuevas de Xcode 5 se presentaban una por una, pero este tutorial no estaría completo si no se hiciera referencia a las mejoras bajo la superficie. Entonces, hagamos un breve recorrido por los principales cambios y adiciones hechas a la compilador.
En primer lugar, hasta la versión 4.6, Xcode admitía dos compiladores: Apple LLVM y LLVM-GCC 4.2. En Xcode 5, este último ya no existe y solo queda Apple LLVM, con nuevas funciones que lo hacen aún más útil..
El compilador LLVM introduce la lógica de Módulos. Pero antes de explicar qué es un módulo, veamos brevemente el problema que contraataca. Cuando un compilador analiza un archivo, no analiza solo el código existente en ese archivo, sino que también lo hace para todos los archivos de encabezado que se importan (mediante el comando #import) al archivo. Este proceso funciona recursivamente, y todos los archivos importados finalmente se analizan hasta la última línea de código. Esto significa que, en lugar de analizar solo las líneas de código existentes en el archivo inicial, se deben analizar miles de líneas más debido a las importaciones continuas. Este no es un problema nuevo y los módulos vinieron para proporcionar una solución. Un módulo es una base de datos simple y optimizada que guarda el código analizado de un solo archivo de encabezado del sistema (por ejemplo, UIKit.h, Webkit.h, etc.). Compilador construye un conjunto de dichos módulos, y cuando es el momento de analizar nuestro propio archivo, no es necesario volver a analizar los archivos de encabezado. Teniendo en cuenta que los mismos archivos se importan una y otra vez varias veces, resulta obvio que los módulos ofrecen un gran rendimiento en la compilación. Además, Xcode utiliza módulos para lograr algunas de sus funciones avanzadas, como la sintaxis, el resaltado y la finalización automática..
Otra nueva característica del compilador es la Auto-vectorizador, que se agregó claramente por razones de rendimiento. Su trabajo es analizar el código y buscar segmentos, donde se pueden ejecutar dos o más operaciones (hasta 32) al m