19 puntos por GN⁺ 2024-08-30 | 3 comentarios | Compartir por WhatsApp
  • Skip es una herramienta que permite extender el desarrollo de apps en Swift a Android
  • Permite desarrollar apps nativas tanto para iOS como para Android usando Swift y Xcode
  • Cómo funciona Skip
    • Si desarrollas una app en Swift y SwiftUI en Xcode, el plugin de Xcode de Skip la convierte a Kotlin y Jetpack Compose
    • Permite desarrollar bibliotecas o apps completas en ambas plataformas manteniendo el rendimiento nativo y la interfaz de usuario

Ventajas de las apps con Skip

Verdaderamente nativas

  • Las apps con Skip no solo "parecen nativas", sino que realmente lo son
  • En iOS usan Swift y SwiftUI, y en Android Kotlin y Compose

Transparencia total

  • Con Skip, todas las partes de la app quedan expuestas al desarrollador
  • Puedes inspeccionar y personalizar directamente el código Swift convertido a código fuente Kotlin

Ligereza

  • Con SkipZero, la app de iOS no depende del framework de Skip
  • La app de Android solo necesita algunas bibliotecas open source de Skip

Eficiencia de memoria

  • Como no hay un runtime de gestión adicional, las apps con Skip son lo más eficientes posible en ambas plataformas
  • En iOS usa bare metal, y en Android bytecode de ART

IDE ideal

  • El IDE de Skip es Xcode, el mejor entorno para el desarrollo en iOS
  • Para personalizaciones en Android, puedes abrir directamente en Android Studio el código generado

Integración perfecta

  • Como Skip genera Kotlin y Compose estándar, la integración con bibliotecas de Android es sencilla
  • Puedes llamar directamente a otro código Kotlin y Java

Basado en open source

  • El transpilador de Skip es solo la mitad de la historia
  • Frameworks como Foundation y SwiftUI, que respaldan el desarrollo de apps en iOS, también pueden usarse en Android mediante implementaciones open source gratuitas de Skip

Compatible con CI

  • Skip también convierte las pruebas unitarias
  • Puedes ejecutar pruebas en local o de forma remota para garantizar el mismo rendimiento de la lógica entre plataformas

Posibilidad de salida

  • Tanto la entrada en Swift como la salida en Kotlin pertenecen al desarrollador
  • No es necesario depender continuamente del transpilador de Skip

Resumen de GN⁺

  • Skip es una herramienta que permite extender apps en Swift a Android, manteniendo el rendimiento nativo y la interfaz de usuario en ambas plataformas
  • Permite a los desarrolladores trabajar de forma más eficiente aprovechando tanto Xcode como Android Studio
  • Al estar basado en open source, ofrece transparencia y posibilidades de personalización
  • Es compatible con CI y, mediante pruebas, puede garantizar el mismo rendimiento entre plataformas
  • Un proyecto con funciones similares es Kotlin Multiplatform

3 comentarios

 
ing03201 2024-08-30

Estaría genial si también llegara a soportar ofuscación de código.

 
godrm 2024-08-30

Oh, qué interesante. Aún no tengo nada claro cuánto ni cómo se procesa, pero parece un intento temerario y divertido.

 
GN⁺ 2024-08-30
Comentarios de Hacker News
  • Experiencia compartida al intentar portar una app personal a Android

    • Está desarrollando una app para iOS con SwiftUI e intentó portarla a una versión para Android con React Native, Ionic, Ignite y otras opciones, pero tuvo dificultades
    • Al probar Skip, quedó muy satisfecho porque puede escribir la app en un solo lenguaje manteniendo el contexto de Swift
    • Es fácil escribir código específico por plataforma y puede ejecutar la app rápidamente sin tener que aprender Android
    • Planea desarrollar toda la app con Skip y publicarla en ambas tiendas de aplicaciones
  • Preocupaciones sobre Skip

    • Dudas sobre la licencia de código abierto (GPL vs MIT)
    • Curiosidad sobre cómo maneja los paquetes y la bifurcación entre iOS y Android
    • Preguntas sobre cómo se manejan las API de servicios de Apple en Android
    • Necesidad de ejemplos de anuncios y compras dentro de la app
  • Pregunta sobre la gestión de dependencias en Skip

    • Duda sobre si los paquetes de Swift PM pueden usarse de forma transparente en proyectos Android
    • Se pregunta si Kotlin puede llamar bibliotecas de Swift de forma transparente
  • Opinión sobre el mercado objetivo de Skip

    • Parece un producto dirigido principalmente a empresas de EE. UU. y Europa que quieren convertir apps de iOS a Android
    • En otras regiones donde Android es dominante, existen frameworks mejores como Flutter, React Native y Kotlin MP
    • Señala problemas de transpilación y dificultades de mantenimiento en Skip
  • Experiencia de conversión de código usando ChatGPT y Claude

    • Logró convertir código SwiftUI a Kotlin, Jetpack Compose y Material3 con éxito
    • El código generado funcionó casi de inmediato y solo necesitó ajustes de estilo/tema
  • Experiencia de uso de Skip

    • Tras usarlo durante unos meses, concluye que aunque hay curva de aprendizaje, resuelve por completo los problemas cross-platform
  • La documentación de Skip y los límites de la transpilación

    • Se pregunta si existen límites en la transpilación al usar SwiftUI u otras bibliotecas centrales
    • Posibilidad de que surjan problemas similares a las dificultades del desarrollo con Xamarin
  • Limitaciones del framework de Skip

    • Como la mayoría de las apps de iOS usan frameworks de la plataforma Apple, la implementación mínima de Skip puede ser limitada
    • Actualmente no hay implementación de StoreKit, WebKit, SafariServices, UserNotifications, CryptoKit, entre otros
  • Dificultad para integrar Skip con apps existentes

    • Pregunta si es difícil integrar Skip con apps existentes construidas con SwiftUI + UIKit
    • Necesidad de ejemplos de apps pequeñas o medianas migradas a Skip
  • Resolución de problemas de rendimiento en Skip

    • Ayuda mucho a resolver los problemas de rendimiento de los frameworks cross-platform