WWDC 2014 Consecuencias

WWDC es como los desarrolladores de Christmas for Cocoa, y esto es ciertamente cierto para la edición de este año debido a la escasez de filtraciones y rumores que condujeron a la conferencia. A pesar de que todos tenemos curiosidad por escuchar lo que Apple tiene en la tienda para todos los que aman a Apple, la presentación es mucho más divertida cuando no tienes idea de lo que se anunciará, como este año.

Si has visto la nota clave de Tim Cook, estoy seguro de que estás de acuerdo en que Apple superó las expectativas de todos. Tomemos unos minutos para resumir lo que Apple ha anunciado, lo que significa para los desarrolladores y lo que puede esperar para este año..

Confiado y feroz

No importa lo que se haya escrito sobre Apple en los últimos meses, Apple está vivo y pateando. Parece que Apple sí tiene doblado en secreto, porque algunos, si no la mayoría, de lo que se anunció durante la presentación del lunes fue una sorpresa, incluso para las personas familiarizadas con la línea de productos y la hoja de ruta de Apple..

Lo que me sorprendió durante la presentación fue el tono de los oradores principales, Tim Cook y Craig Federighi. La compañía ha recuperado la confianza que parecía haber dejado a la compañía en 2011, cuando Steve Jobs falleció..

La compañía está orgullosa de sus productos, de su comunidad de desarrolladores, y no escapa a la ridiculización ocasional de Android. La sana relación con Microsoft también estuvo presente a lo largo del discurso..

OS X Yosemite

Desde la perspectiva de un desarrollador de iOS, el anuncio de OS X Yosemite puede no parecer tan importante, pero esto no es completamente exacto. A pesar de que Apple ha declarado repetidamente que iOS y OS X siguen siendo sistemas operativos separados, está claro que la compañía está mejorando su integración con cada lanzamiento..

No es casualidad que el ciclo de desarrollo de OS X haya cambiado de 18-24 meses a 12 meses, al igual que el de iOS. Si bien iOS heredó mucho de OS X durante sus primeros años, parece que iOS ahora le está devolviendo el favor. Con OS X Yosemite, la apariencia de OS X es más parecida a la de iOS. OS X no solo se ha vuelto más plano, como su hermano pequeño, sino que la nueva función de Continuidad es otro paso para una mejor integración y comunicación entre ambos sistemas operativos..

Las características como AirDrop, Handoff e iCloud Drive facilitan el cambio entre iOS y OS X, casi sin fricción. Estas características son parte de la respuesta de la compañía a la solicitud de los consumidores para que la integración entre iOS y OS X sea mejor y menos complicada..

Pero Apple no lo dejó así. La compañía lo ha llevado un paso más allá al aprovechar la detección de proximidad, lo que significa que su Mac sabe cuándo su dispositivo iOS está cerca. Esto permite algunas cosas, como aceptar llamadas entrantes en su iPhone desde su Mac. Su iPhone también configurará automáticamente un punto de acceso personal tan pronto como sepa que una de sus Mac está cerca. Cuan genial es eso?

iOS 8

La transición de iOS 6 a iOS 7 fue más que evolutiva y estoy seguro de que está de acuerdo en que el viaje no fue tan fácil como Apple dice que fue. iOS 7 introdujo tantas características nuevas, cambios visuales y cambios de paradigma que el usuario promedio y la mayoría de los desarrolladores dudan un poco en adoptar la nueva dirección que Apple tomó con iOS.

El anuncio de iOS 8, sin embargo, es diferente. La mayoría de los cambios introducidos en iOS 8 son cambios que refinan el sistema operativo, lo integran con OS X y mejoran la estabilidad y usabilidad general del sistema operativo..

Las fotos

La aplicación de Fotos ha sido revisada, ahora es más poderosa que nunca. Apple mostró brevemente una versión para OS X que se enviará a principios del próximo año. No se mencionó iPhoto ni Aperture, y no está claro si Photos for OS X los reemplazará.

Con Fotos para iOS, ahora puede buscar todas las fotos y películas que haya tomado con cualquier dispositivo iOS. Esa es la idea y iCloud, que ahora puede almacenar cada foto y película que tome con un dispositivo iOS, debería hacer esto posible..

Con ese cambio, Apple ha entrado en el territorio de Dropbox. Aunque cada foto y película que tome con un dispositivo iOS está almacenada en iCloud, tenga en cuenta que esto no será gratis para todos. El precio de Apple, sin embargo, parece más que razonable..

Extensiones

A partir de iOS 8, una aplicación puede tener una o más extensiones que extienden la funcionalidad de una aplicación a otras aplicaciones, incluido el sistema operativo. Las extensiones son la respuesta de Apple a una solicitud muy común tanto de desarrolladores como de usuarios finales..

Las extensiones vienen en muchas formas. Una extensión puede ser un widget simple para el Centro de notificaciones que muestra datos meteorológicos, pero también puede ser un teclado personalizado, otro gran cambio para iOS. Durante la presentación, por ejemplo, Federighi mostró cómo se usaba una aplicación de terceros para editar una foto en Fotos para iOS. La aplicación de terceros proporciona la interfaz de usuario y la integración parece bastante perfecta..

identifición de toque

Según Apple, Touch ID es un gran éxito con más del 80% de los consumidores que lo tienen habilitado. En iOS 8, Apple abre la API de identificación táctil a desarrolladores externos. La seguridad sigue siendo clave, lo que significa que la información de la huella digital real no es accesible ni está expuesta a los desarrolladores.

iCloud y CloudKit

iCloud sigue siendo un aspecto muy importante del ecosistema iOS y OS X para Apple. De hecho, el rol de iCloud se vuelve más importante con cada iteración de iOS y OS X.

La solución en la nube de Apple se ha mejorado drásticamente, tanto desde el punto de vista del usuario final como del desarrollador. Ya mencioné cómo iCloud ahora puede almacenar cada foto y película que realice con sus dispositivos iOS, pero Apple también permite el acceso a los datos almacenados en iCloud al introducir iCloud Drive. Hace que compartir datos entre aplicaciones iOS y OS X sea más fácil y más transparente.

Enviar correos electrónicos con archivos adjuntos grandes ya no es un problema con iCloud Drive. Como mencioné anteriormente, iCloud es gratis hasta 5GB. El espacio adicional cuesta $ 0,99 por 20 GB por mes o $ 3,99 por mes por 200 GB. El límite superior es 1TB.

iCloud Drive no es el único cambio que Apple realizó en el lado del servidor, la compañía también presentó Cloud Kit. Con Cloud Kit, Apple se encarga del aspecto del lado del servidor del desarrollo de aplicaciones iOS, lo que permite al desarrollador concentrarse en la aplicación iOS. Con Cloud Kit, Apple ha entrado en el mercado de BaaS o PaaS..

Kit de salud

Apple también anunció HealthKit y Health para iOS. HealthKit es una plataforma para administrar sus datos de salud y estado físico. La aplicación Salud visualiza estos datos en la moda de Apple. Por supuesto, los datos que muestra la salud para iOS dependen de la entrada que recibe de otras aplicaciones que recopilan datos.

Una aplicación como Nike +, por ejemplo, puede compartir sus datos de aptitud física a través de HealthKit y solicitar datos de nutrición que otra aplicación haya recopilado. Apple enfatizó que la privacidad es una preocupación importante. Aplicaciones de terceros no pueden acceder a sus datos de salud sin su permiso.

HomeKit

Es impresionante la cantidad de nuevas funciones, marcos y API que se introdujeron durante la nota clave de este año. HomeKit es otra adición sorprendente a iOS. El marco HomeKit es una integración entre dispositivos iOS y dispositivos que se ajustan al protocolo de automatización del hogar de Apple..

La idea es brindar cordura al creciente mercado de la automatización del hogar en el que cada fabricante tiene sus propios estándares y aplicaciones. No parece que Apple simplemente esté probando las aguas con HomeKit, ya que la compañía enumeró una impresionante lista de grandes marcas que dicen ser compatibles con HomeKit. Esperemos que HomeKit haga que la automatización del hogar sea menos dolorosa y más consistente para los usuarios de iOS.

Juego encendido

Otra gran sorpresa fue la introducción de Metal, una API de bajo nivel para realizar gráficos complejos en dispositivos iOS. Como se demostró durante la presentación, Metal pretende minimizar la sobrecarga que tiene OpenGL al reemplazarla con una API que no solo reduce esta sobrecarga, sino que también aumenta el rendimiento en dispositivos iOS.

SpriteKit, introducido en iOS 7, ha recibido una actualización significativa con física por píxel, cinemática inversa y fuerzas de campo. Además, SceneKit, disponible en OS X desde hace varios años, ahora también está disponible en iOS.

Vuelo de prueba

La cantidad de anuncios importantes fue asombrosa. Ya sabíamos que Apple adquirió Burstly, la compañía detrás de TestFlight, pero no esperaba que lo ofrecieran como un servicio propio tan pronto. Pero lo hicieron.

TestFlight, el nombre no ha cambiado, permitirá la distribución de aplicaciones beta a través de la aplicación TestFlight de Apple. El único inconveniente es que requerirá iOS 8. Sin embargo, la adquisición de Burstly parece no tener más que ventajas. Por ejemplo, cada aplicación, no la cuenta de desarrollador, puede tener hasta 1,000 evaluadores. No hay límite en el número de dispositivos por probador. Esto realmente es una noticia sorprendente y hará que el proceso sea mucho menos engorroso para los desarrolladores de iOS. El aprovisionamiento de aplicaciones también es mucho más sencillo gracias a TestFlight. Si pensabas que la distribución beta era fácil con TestFlight, ahora es aún más fácil gracias a, bueno, TestFlight.

Apple no sería Apple si no controlase estrechamente la distribución de compilaciones a los evaluadores. Según el Acuerdo de licencia de desarrollador de iOS actualizado, Apple debe revisar una aplicación antes de poder distribuirla a los evaluadores. No está claro cómo sucederá esto y cuánto tiempo tomará Apple para revisar decenas de miles de versiones de prueba, pero, como señala Ole Begemann, parece que Apple es más indulgente cuando se trata de revisar las versiones de prueba. Tendremos que esperar hasta el otoño para descubrir cómo se desarrollarán las cosas..

Rápido

El anuncio más importante del discurso de la WWDC de este año fue, sin lugar a dudas, la introducción de Swift, un nuevo lenguaje de programación para desarrollar aplicaciones iOS y OS X. El objetivo de Swift es hacer que el desarrollo sea más fácil, menos doloroso y más moderno. A primera vista, Swift es un lenguaje de programación dinámico que es increíblemente expresivo gracias a su intuitiva, atractiva y sintaxis..

Swift no tiene encabezados, ni punto y coma, y ​​admite cierres y genéricos. Las funciones pueden tener múltiples valores de retorno y argumentos opcionales. Otro punto focal del lenguaje es la seguridad. Por ejemplo, su aplicación no se bloqueará cuando acceda a un elemento de una matriz que esté fuera de los límites de la matriz.

Empezando desde cero

¿Significa esto que todos los desarrolladores de Cocoa deben comenzar desde cero en términos de aprender a desarrollar Cocoa? No. La belleza de Swift es que se integra muy bien con Cocoa y Cocoa Touch..

Si explora algunos ejemplos de código de Apple, pronto notará dos cosas. Primero, la sintaxis es muy fácil de aprender. Es menos detallado en comparación con C y Objective-C, y más intuitivo. En segundo lugar, Swift aprovecha las API y los marcos existentes, lo que significa que su conocimiento de la creación de aplicaciones iOS y OS X le dará una ventaja si decide adoptar Swift en sus proyectos..

Si bien hay muchas características del lenguaje Swift que merecen nuestra atención, me gustaría resaltar algunas que tardarán en acostumbrarse si usted es un desarrollador de Objective-C..

Inferencia de tipos

En Swift, los tipos se deducen, lo que significa que ya no tiene que declarar una variable como NSString o NSDiccionario. El compilador es lo suficientemente inteligente como para inferir el tipo e incluso optimizará su código entre bastidores.

Organización

Diga adiós a los archivos de cabecera y de implementación. Swift se deshace de los archivos de cabecera por completo y estoy seguro de que no te importa.

Cuidado con el punto y coma

Al igual que Ruby y CoffeeScript, no es necesario terminar una línea de código con un punto y coma a menos que una línea contenga varias declaraciones.

Objective-C y C

Swift juega muy bien con Objective-C y C. De hecho, Swift usa el mismo tiempo de ejecución que usa Objective-C. Puede usar Swift y Objective-C en el mismo proyecto sin problemas. Esto hará que la migración de Objective-C a Swift sea un poco menos que una tarea monumental.

Xcode 6

A pesar de que Xcode 6 todavía está en fase beta, Apple también planeó un gran lanzamiento para su entorno de desarrollo integrado. Xcode 6 agrega soporte para Swift, depuración de vista, soporte mejorado para localizar proyectos, renderización en vivo en Interface Builder, fuentes iOS personalizadas y soporte para extensiones.

Esto es solo una pequeña selección de las nuevas características y mejoras de Xcode 6. Si se está preguntando en qué Apple ha estado trabajando durante los últimos años, entonces no se preocupe más..

Conclusión

Estoy de acuerdo con Joshua Topolsky y Craig Hockenberry, el tono de la conferencia fue increíblemente optimista. Apple está lista para enfrentarse a su competencia y ha recuperado su confianza. Tim Cook no perdió ninguna oportunidad de burlarse del Android de Google y de mostrarle a Apple que Apple sigue siendo el líder del espacio móvil..

Google I / O está a la vuelta de la esquina y no puedo esperar a ver lo que Google tiene para nosotros. Nunca ha sido un mejor momento para ser o convertirse en un desarrollador móvil..