Un muchachito nuevo en el barrio
Tiendas alternativas, IA en el dispositivo y mucho Swift, prepara una buena taza de café que empezamos
Tiendas alternativas: no solo en iOS, también en breve llegarán a iPadOS. Cabe recordar que sólo en Europa, pero la primera (el AltStore) llegó con solo dos apps y se esperan otras anunciadas como una de Microsoft con sus juegos para Xbox en Cloud Gaming y varias apps propias, además de la tienda de SetApp. AltStore además cobra 1,50€ más impuestos al año para cubrir el CTF (Core Technology Fee) que es la tarifa que Apple cobra a partir del millón de instalaciones al año a las apps que tengan algún tipo de monetización (las completamente gratuitas se libran).
Desde luego, la primera tienda no podía empezar peor porque bajo el reclamo de “Discover apps that push the boundaries of iOS.” Y uno de esos boundaries son: un portapapeles vitaminado que te satura de notificaciones para que abras la aplicación cada vez que copias algo para no perderlo, y un emulador que fuera de Europa está disponible en el App Store. La realidad es que Apple ha eliminado para el acuerdo de negocio de las tiendas alternativas todas las condiciones de negocio y varias más de otros apartados, pero ha conservado todo lo referente al control de contenido y a la privacidad. Podemos ver las diferencias en las normas en App Review Guidelines pulsando en el check “Show Notarization Review Guidelines Only”.
Esta semana nos hacemos eco de Mark Gurman, donde asegura que Apple habría conseguido que, las características de sus próximos sistemas operativos que requieren IA, se ejecuten completamente en el dispositivo. Esto nos lleva a Private LLM que utiliza distintos modelos para crear un chatbot que se ejecuta en el terminal y a la historia de este chico que ha aportando tanto valor creando modelos para ejecutar con MLX, que la propia comunidad le ha comprado un portátil nuevo todo chetado que dice la juventud. Aunque eso no quita que Apple parece que habría cerrado un acuerdo de colaboración con OpenAI para integrar sus soluciones en sus nuevos sistemas, sobre todo el espectacular recién presentado modelo GPT4o. De hecho, habrá app de escritorio de ChatGPT para Mac, capaz de ver nuestra pantalla para ayudarnos en cualquier tarea. Solo compatible con Mac con chips Apple Silicon y macOS 14 en adelante.
Y aviso a navegantes, el 1 de Mayo se cumplió el plazo por el que ahora es necesario que todas las aplicaciones que se envíen al App Store para revisión, declaren el uso de las APIs que puedan comprometer la privacidad del usuario. No es un proceso complicado, y llevan algunos días avisando. Cuando subimos una versión que no los declara, un correo bastante detallado nos indica exactamente lo que nos hace falta para corregirlo. ¡Avisados quedáis! Y también debéis incluir en los informes de privacidad (Nutrition Labels) todo lo que cualquier API de terceros haga en vuestra app con los datos de cliente: ojo a los millones de apps con Firebase.
Enumerando y descomponiendo con atajos
Uno de los tipos más utilizados de Swift, que permiten las abstracción de listas finitas de forma segura, son los enum. Pero lo útil puede volverse en su contra si no lo usas correctamente. Aquí os dejamos con varios de los errores que no debes cometer.
En el Podcast ya hemos hablado de descomposición y paquetización de proyectos. En esta pieza no sólo hablan de los pros y los contras, si no que el autor detalla cómo ha realizado la descomposición de su propia aplicación, paso por paso, con muchos ejemplo de cada parte.
Cerramos la sección con una colección de atajos de teclado para ser más productivos con Xcode. Puedes debes llamarlos combos si quieres.
Modelo-Vista y Vista-Parámetro, barras e imágenes
Las arquitecturas de software dan para debate, y seguramente que enérgico porque es uno de los temas más controvertidos. Y el amigo Pedro de SwiftAndTips, nos deja esta pieza donde se pregunta si realmente son necesarios los ViewModel en SwiftUI o si su uso es una desventaja frente a simplemente tener Modelos y Vistas bien organizados. Sin salirnos de las vistas de SwiftUI, tenemos esta pieza sobre cómo pasar una vista a otra como parámetro. Recuerda: siempre hay que ser nativo, pero asomarse a ver qué recomiendan expertos nunca es malo.
No suele faltar entre los artículos destacados el blog SwiftLee, esta semana os dejamos una pieza sobre los gráficos de barras de la librería SwiftCharts. Atrás quedaron los días de pintar gráficos a mano o con librerías de terceros. Lo que si que podemos dibujar son los archivos SVG en las vistas de SwiftUI. El elemento Shape permite hacerlo de forma sencilla.
Café experimental con Macros y extra de aislamiento
Y no queremos cerrar sin nuestra sección cafetera. Empezamos una pieza de Donny Wals sobre cómo activar las características experimentales de Swift en la configuración de Xcode, que hará las delicias de los más aventurados. En este grupo seguramente se encuentran también los desarrolladores que no se conforman con usar las Macros que ofrecen el lenguaje y los frameworks más utilizados, si no que están dispuestos a hacer las suyas propias.
El aislamiento de variables, y asegurar que son escritas y/o leídas de forma segura, es algo que preocupa con el nuevo modelo de concurrencia async/await pero el problema viene ya de los tiempos de Grand Central Dispatch. Una buena forma de tener claro lo que implica, es diferenciar entre aislamiento dinámico y estático.
Presentamos nueva formación: Vision Developer Program
Desde AC Academy estamos de enhorabuena pues hemos lanzado un nuevo programa formativo que se impartirá el próximo mes de julio en modalidad online en directo, que está pensado para todos vosotros, desarrolladores en entornos Apple: Vision Developer Program. Una formación que os enseñará a cómo crear apps para visionOS desde 0 con SwiftUI, SwiftData, RealityKit y el resto de herramientas de la nueva plataforma de realidad extendida (computación espacial) de Apple.
Una formación pensada para desarrolladores en entornos Apple con UIKit o SwiftUI, que quieran dar el siguiente paso y aprender a cómo estar presentes en el desembarco de toda una nueva plataforma en la que Apple lleva trabajando casi desde el lanzamiento del iPhone. Tienes todos los detalles en nuestra web.
Y poco más
Parece un cambio menor, pero las tiendas alternativas van a, por lo menos, hacer pensar a Apple en otras formas de hacer la suya más competitiva. Seguiremos con la silly season de cara a la WWDC y como siempre, mucho Swift. Si quieres dejarnos cualquier comentario o contarnos algo, puedes dirigirlo a nuestros canales habituales que son el correo caffeswift@gmail.com y la cuenta de X @caffeswift.
Nos leemos pronto, si Jobs quiere, y hasta entonces: un saludo y Good Apple Coding.