Video: 15 Apple M1 Games vs iPhone 12, iPad Pro, iPhone SE and more! (Noviembre 2024)
La Conferencia Mundial de Desarrolladores (WWDC) anual de Apple ha sido recientemente el lugar donde la compañía presenta nuevas versiones de sus sistemas operativos Mac OS X e iOS, y la versión de este año no fue la excepción. Pero lo que me llamó la atención fue que la nota clave de este año se centró mucho más en los desarrolladores con una gran cantidad de nuevas API y servicios compartidos, un modelo para crear juegos e incluso un nuevo lenguaje de programación. En conjunto, esto no es más que un replanteamiento del ecosistema de desarrolladores de Apple a medida que la compañía intenta posicionarse para el futuro. Algunos de los resultados de este enfoque deberían aparecer en las aplicaciones en breve, pero es probable que el impacto real se vea durante un período de años a medida que los desarrolladores realmente se sientan cómodos con las nuevas herramientas.
La mayoría de estas herramientas son parte de iOS 8, y el CEO de Apple, Tim Cook, dijo que permitirán a los desarrolladores "crear aplicaciones que no habían soñado antes". En total, hay 4.000 nuevas API, según el vicepresidente senior de ingeniería de software de Apple, Craig Federighi.
Cook dijo que la App Store ahora tiene 1.2 millones de aplicaciones, con un total de más de 75 mil millones de aplicaciones descargadas. Dijo que hubo algunos cambios nuevos en la tienda, lo que facilitó a los clientes buscar aplicaciones y a los desarrolladores promocionar sus aplicaciones. Entre estos se encuentran los "paquetes de aplicaciones", que permiten a los desarrolladores ofrecer múltiples aplicaciones a un precio con descuento; videos cortos para previsualizar aplicaciones; y un nuevo servicio de prueba beta llamado Test Flight. Al igual que con iOS 8, estará disponible en otoño. En conjunto, dijo Cook, las nuevas características hacen de iOS 8 el "mayor lanzamiento desde el lanzamiento de la App Store".
De alguna manera, el mayor cambio filosófico en iOS 8 parece ser un movimiento hacia una mayor extensibilidad. Actualmente en iOS, todas las aplicaciones se ejecutan en sus propios "sandboxes", lo que permite la seguridad y la estabilidad. Pero ahora, las aplicaciones pueden extender el sistema y ofrecer servicios a otras aplicaciones, y ejecutarse dentro de esos sandboxes. Por ejemplo, una aplicación ahora podría ofrecer filtros de fotos dentro de las aplicaciones de Fotos.
Federighi demostró cómo podría crear una "hoja compartida" que funcione dentro del navegador Safari, y cómo Bing Translate ahora podría ejecutarse como un servicio dentro del navegador cambiando la página de un idioma a otro. También mostró filtros de fotos de terceros dentro de la aplicación Fotos, y widgets de ESPN SportsCenter y eBay dentro del Centro de notificaciones.
Federighi también dijo que el sistema ahora permite teclados de terceros en todo el sistema y mostró Swype como ejemplo. Otras extensiones exponen la API de la cámara por primera vez y permiten que las aplicaciones de terceros usen Touch ID, por lo que los usuarios pueden usarla para realizar compras en la aplicación. (Anteriormente, esto solo funcionaba para iTunes. Es una opción de pago interesante, aunque me sorprendió no saber más sobre los pagos en la nota clave).
En conjunto, esto parece un gran cambio, lo que hace que iOS sea mucho más flexible. Todavía no es tan flexible como OS X u otros entornos de escritorio, pero ciertamente está más cerca. (Todavía no tiene varias aplicaciones en la pantalla al mismo tiempo, por ejemplo). En general, configura iOS para que sea un entorno mucho más rico en el futuro.
Salud, hogar y conexiones en la nube
Las herramientas que probablemente tengan un impacto más rápido son las nuevas API que permiten a los desarrolladores ampliar sus aplicaciones existentes.
Estos incluyen una serie de nuevos servicios que reúnen información que anteriormente estaba disponible en aplicaciones individuales. Uno de los más importantes es HealthKit, un lugar único donde las aplicaciones pueden contribuir a un perfil compuesto de su salud y estado físico. Hoy en día, hay muchos dispositivos y aplicaciones para el ejercicio y el uso médico, pero todos estos viven en silos. Con HealthKit, la idea es que, por aplicación, puede especificar a qué partes del perfil desea que acceda cada aplicación.
Federighi explicó que Apple está trabajando con proveedores como la Clínica Mayo, que permite al hospital llamar directamente a un usuario si detecta que algo está mal mirando los datos de múltiples aplicaciones.
Otra nueva herramienta llamada HomeKit está diseñada para hacer cosas similares para aplicaciones que controlan cosas en su hogar, como luces, cerraduras y termostatos. Esto implica un protocolo de red común que puede controlar dispositivos individuales, o incluso múltiples dispositivos, que Apple llama Escenas. Esto podría integrarse con Siri, por lo que puede pedirle a Siri que prepare su hogar cuando regrese después de un día en la oficina.
Dado que muchas, si no la mayoría de las aplicaciones actuales tienen un componente en la nube, Apple presentó CloudKit, un nuevo servicio para alojar aplicaciones en la nube, que maneja cosas como almacenamiento, autenticación y notificaciones.
Federighi dijo que esto sería efectivamente "gratuito con límites" ya que la capacidad aumentaría con el número de usuarios. No escuché demasiados detalles aquí, por lo que no está claro cómo competirá con otros proveedores de alojamiento en la nube para desarrolladores. Pero sonó como algo que muchos desarrolladores querrán.
Los juegos obtienen mejores gráficos en 3D
Las otras dos áreas se ocuparon más de la creación de aplicaciones en un nivel más fundamental. Me sorprendió un poco el énfasis que había en crear juegos.
Quizás el más importante de estos es un conjunto de API llamado "Metal", que está diseñado para permitir que los diseñadores de juegos escriban más directamente en el procesador A7 de Apple (y presumiblemente también en los futuros procesadores de Apple), en lugar de utilizar el estándar de la industria OpenGL ES.
Federighi dijo que Metal reduce drásticamente la sobrecarga del conjunto de instrucciones y permitiría un dibujo hasta 10 veces más rápido y una multitarea eficiente. Entre los desarrolladores de motores de juegos que están trabajando en esto están Unity, Crytek, Electronic Arts y Epic Games.
El fundador de Epic Games, Tim Sweeney (arriba) demostró Zen Garden, un juego de demostración para iPad que usaba materiales más realistas y tenía muchas más animaciones de las que normalmente se ven en los juegos móviles. Dijo que esto se ofrecerá de forma gratuita en iOS 8.
Últimamente, hemos escuchado muchos métodos para eludir las API más pesadas de OpenGL o Direct X, y la entrada de Apple debería permitir juegos más rápidos y con mayor riqueza gráfica. Todavía es poco probable que veamos que los dispositivos móviles obtengan los gráficos de los juegos de PC de gama media o alta en el corto plazo, pero es un gran paso adelante.
Para juegos más casuales, Apple ofrece SpriteKit, un motor de juegos 2D presentado el año pasado, y ahora lo complementa con SceneKit, con renderizado de escenas 3D.
La llegada de Swift
Finalmente, y quizás lo más sorprendente, Apple presentó Swift, un nuevo lenguaje de programación diseñado para reemplazar el entorno Objective-C comúnmente utilizado para producir aplicaciones Mac e iOS.Federighi dijo que Objective-C "nos sirvió bien durante 20 años", pero que era hora de crear un nuevo lenguaje, que describió como "Objective-C sin C". Para la descripción, parece ser un lenguaje moderno y más rápido, pero que utiliza el mismo modelo de administración de memoria y el mismo tiempo de ejecución, por lo que el código Swift puede ejecutarse junto con Objective-C y C en la misma aplicación.
El director de herramientas para desarrolladores Chris Lattner (arriba) mostró el nuevo entorno, incluida una demostración de cómo ejecuta su código a medida que escribe las instrucciones. Fue una demostración atractiva, aunque el verdadero juez tendrá que ser los desarrolladores de Apple después de que hayan tenido más oportunidades de usarlo realmente.
Conozco desarrolladores que se quejaban de que Objective-C no es tan moderno como algunas alternativas, aunque en general no los he escuchado pedir un nuevo lenguaje. Aún así, Apple necesitaba algo para competir con el conjunto de herramientas de Google y Microsoft que se han mejorado drásticamente en los últimos años, con el objetivo de facilitar la creación de aplicaciones móviles y en la nube.
En total, este fue un espectáculo que realmente enfatizó el "desarrollador" en la Conferencia Mundial de Desarrolladores, que no siempre ha sido el caso. La conferencia tenía un lema de "Escribe el código. Cambia el mundo". Si el mundo cambiará es una pregunta abierta, pero las herramientas introducidas ciertamente marcan un cambio en cómo se escriben las aplicaciones de Apple.