¿Es realmente posible que Google adopte Swift en Android en el futuro cercano?

No veo ninguna razón por la que no deberían considerarlo. Swift2 es de código abierto, lo que significa que Google podría usarlo e incluso influir en el idioma. Ya hay un compilador de Linux, y Android usa Linux. Además Swift es un lenguaje atractivo bien diseñado. Esto constituye un argumento fuerte y válido para adoptar Swift.

Algunos beneficios para que Google use swift

  • Grandes cantidades de código compartido entre las aplicaciones de iOS y Android (significa que algunos desarrolladores podrían actualizar las aplicaciones más rápido, admitir Android más fácilmente. En general, aumenta el valor de Android)
  • Lenguaje compilado (Java normalmente se ejecuta JIT, Just In Time, que tiene problemas de rendimiento. Mientras que Android actualmente tiene el tiempo de ejecución ART, la bruja precompila los programas de Java, pero un lenguaje compilado normalmente todavía tendría mejoras de rendimiento consistentes)
  • Lenguaje simple y no detallado (esto hace que los programas sean más fáciles de leer, por lo que los proyectos más grandes se mueven más rápido. También facilita que los nuevos desarrolladores aprendan a escribir aplicaciones de Android)

Todavía hay algunas desventajas, como

  • Lenguaje compilado (hace que la arquitectura de las versiones compiladas sea dependiente, Google necesitaría almacenar tanto una versión de brazo como una versión de Intel, posiblemente también un brazo 64 o mips. Cada arquitectura tendría que tener una distribución separada)
  • No hay bibliotecas centrales (aunque parte de la base se está transfiriendo a pura rapidez, Google no podría usar API como UIKIt, SceneKIt, GameKit y otros * Kits, lo que significa que todo el código front-end sería totalmente diferente entre iOS y Android. Además, algunas bibliotecas para iOS no funcionarían si dependen de bibliotecas básicas distintas de la base).
  • Lenguaje menos establecido (Java es un estándar de la industria, Swift solo tiene aproximadamente 2 años. Independientemente de si le gusta Java, está en todas partes)
  • Todas las API de Android tendrían que volver a implementarse y posiblemente reescribirse por completo

Cabe destacar que es posible usar Swift en Android en este momento, no es perfecto. Esto es lo mejor que podemos hacer Cómo usar Apple Swift para hacer una aplicación de Android | ArcTouch es utilizable, pero no sin limitaciones. Además, puede ejecutar código veloz realmente compilado, así como leer la entrada / salida estándar desde Java. Si bien la implementación existente es deficiente, está claro que incluso si Google no adopta Swift, probablemente se convertirá en un lenguaje válido para usar con Android de alguna manera.

Suponiendo que Google tiene la intención de apoyar a Swift, llevará mucho tiempo llegar a la frutición, no espere nada útil este año probablemente.

He leído algunos buenos argumentos para esto y, a pesar de los costos obvios para Google, espero que el cambio suceda. Aquí están los puntos (pro) que he leído y estoy de acuerdo:

  1. Swift es de código abierto
    La tensión entre Google y Oracle (el propietario de Java) sigue siendo un problema legal inminente. Google ciertamente puede tener el dinero y los abogados para mantener a raya a Oracle, pero ¿vale la pena el costo continuo durante la vida de Android?
  2. iOS y OS X
    El mayor valor agregado para Google es la polinización cruzada entre el software de Apple y el suyo. No significará que los desarrolladores solo tengan que escribir aplicaciones móviles una vez, sino que se podría compartir una gran cantidad de código entre las versiones de iOS y Android, ejecutándose a velocidades nativas .
  3. Anti-Java
    Hay muchas dudas (de la comunidad web en particular) para escribir aplicaciones de Android debido a Java. Existen alternativas, como Scala, C # con Xamarin y otras, pero continúan siendo una opción marginal. Swift es comparativamente más simple de entender y exige mucho menos gastos generales que un lenguaje como Java.

Todo es color de rosa y genial, pero he aquí por qué el cambio puede no ocurrir:

  1. Costo
    Google ha invertido un inmenso nivel de esfuerzo en el tiempo de ejecución, herramientas como Android Studio, soporte para desarrolladores y paquetes de biblioteca para Android, todo en Java. A menos que desarrollen un convertidor Java -> Swift impulsado por Unicornio, el tiempo y el costo necesarios para realizar el cambio es desalentador.
  2. Swift permanece sin probar
    Si bien está ganando popularidad y soporte, el número de personas con conocimientos en Java supera en cantidad a los de Swift.
  3. Tecnologías web
    Si bien Swift es una excelente alternativa a Java, la mejor alternativa (y quizás el final del juego de Google) es que Android se comporte más como ChromeOS, donde las aplicaciones web reciben un tratamiento de primera clase en sus dispositivos.

    Si una aplicación web puede convencer a 98 de cada 100 usuarios de que se está comportando “de forma nativa”, entonces también podría ser nativa. El número de bibliotecas y herramientas disponibles para los desarrolladores web eclipsa a todas las demás plataformas. Y todos los desarrolladores web que dudan en compilar para Android de repente no tendrán barreras de entrada.


¡Gracias por leer! Si le gustó mi respuesta, considere ‘votar’ y también considere seguirme para obtener más respuestas sobre software, Android, Java y otras cosas interesantes.

¿Necesitas ayuda con Android? Contáctame

Google planea hacer del lenguaje orientado a objetos Swift de Apple un lenguaje “de primera clase” para Android, informa The Next Web. La publicación, citando fuentes, agrega que Google no tiene la intención de reemplazar el lenguaje actual de primera clase para Android, Java, al menos, “inicialmente”. Google ve una “ventaja” en el uso de Swift, que Apple hizo de código abierto el año pasado. Pero un montón de cosas deben encajar para que esto funcione. Según el informe, “en total, Google tendría que recrear eficazmente sus esfuerzos con Java, para Swift. Si la compañía está lo suficientemente motivada, es muy posible hacerlo sin comprometer sus valores de código abierto o alterar las plumas de los desarrolladores en el camino”. “. La compañía también está discutiendo internamente sobre hacer que Kotlin sea un lenguaje de primera clase para Android. “A diferencia de Swift, Kotlin trabaja con Android Studio, el IDE de Google para el desarrollo de Android. Desafortunadamente, las fuentes le dicen a The Next Web que la mentalidad actual de Google es que Kotlin es un poco lento al compilar”.

Algunos han especulado que una aplicación escrita en Swift podría ejecutarse tanto en Android como en iOS, aunque eso no es del todo exacto. Android e iOS pueden compartir el mismo idioma en el futuro, pero las diferencias de API específicas de la plataforma entre los dos significan que las aplicaciones no se ejecutarán mágicamente en el otro. Sin embargo, facilitaría el desarrollo entre ambas plataformas en el sentido de que los desarrolladores no tendrían que desarrollar en dos lenguajes de programación diferentes.

Hemos visto a algunos grandes jugadores salir con soporte para Swift, especialmente IBM con su marco Kitura.

Es posible , pero no apostaría por ello. Reemplazar toda la infraestructura de software de Android es una tarea masiva sin beneficios claros y muchos costos. También privaría a toda una generación de desarrolladores de Android que han invertido enormes recursos en Java. ¡Qué gran manera de cabrear a todos tus seguidores!

Además, Swift no es la segunda venida para los lenguajes de programación. Está jugando en un vasto campo competitivo de lenguajes emergentes y Swift no tiene ninguna característica atractiva. La similitud con el ecosistema de iOS no significa mucho; las dos plataformas tienen enfoques de ingeniería muy diferentes, incluidas las cosas de la interfaz de usuario. Cualquier código compartido no parece que valga la pena.

También preferiría buscar idiomas más maduros, como Go o Scala. Ir es un idioma mucho mejor. Vea la respuesta de Richard Kenneth Eng a ¿Cuál es el mejor lenguaje de programación para un gran sistema de comercio electrónico?

Hay informes generalizados de que el motor de búsqueda más importante de Google planea utilizar un lenguaje de programación rápido para Android. De hecho, a fines del año pasado, los altos ejecutivos de Google iniciaron discusiones sobre el uso de Swift como un lenguaje de “primera clase” para Android cuando el gigante tecnológico Apple convirtió oficialmente a Swift en un lenguaje de código abierto.

En mi opinión, hacer que Swift sea una opción viable en Android es difícil y requiere mucho tiempo. Por lo tanto, Google continuará con Java en los próximos días también. He enumerado algunas de las razones por las cuales existen innumerables obstáculos que Google y su comunidad de desarrolladores encontrarían en la adopción de Swift.

  • Para empezar, Google necesitaría crear un tiempo de ejecución Swift para Android y proporcionarlo junto con el tiempo de ejecución actual con tecnología Java. Los expertos creen que pasar a la velocidad rápida requiere un enfoque incremental. Además de necesitar la participación activa de los desarrolladores de Android, este tipo de transición es engorroso.
  • Si Google decide agregar Swift a Android, los desarrolladores deberán mostrar la rapidez en la adquisición de habilidades relacionadas con Swift rápidamente. Swift continúa sin ser probado a pesar de recibir una atención generalizada. Hacer que los desarrolladores abandonen un lenguaje conocido y adopte uno nuevo no es nada fácil.
  • La adopción de swift es una tarea importante. La adopción de Google de Swift fructifica solo si el objetivo es reducir la dependencia de una plataforma. Hay que entender que la dirección de Swift está fuertemente influenciada por Apple.
  • Si Google desea disociarse con los lenguajes y tiempos de ejecución de terceros, no elegiría Swift y deshacerse de Java. Los expertos opinan que Google preferiría elegir un idioma, tiempo de ejecución, etc. todo desarrollado internamente.

Matar Java en Android sería increíble, para ser sincero. Reemplazándolo con Swift … No he usado Swift mucho, y honestamente preferiría ver un lenguaje más utilizado (Go o C ++) como un lenguaje de primera clase. Pero apoyar oficialmente a Swift es mejor que solo admitir Java.

Java es una plataforma agonizante y no podemos negarlo. En 2008, probablemente eligieron Java, ya que era un lenguaje popular y querían atraer desarrolladores.
Parece posible que Google encuentre un desplazamiento para Java y es muy probable que sea Swift.
Nadie lo sabe con certeza, pero no hay nada malo en esperarlo.

Actualizar:

Anwar Ghuloum, Director de Ingeniería de Android Core Platform dijo lo siguiente en un reddit ama en julio de 2016:

No tenemos planes de pasar a un nuevo idioma. Java tiene muchas ventajas y las versiones 8, 9 y 10 tienen algunas cosas bastante interesantes para los desarrolladores. Estamos planeando seguir más de cerca en el tiempo al estándar del lenguaje Java.

Por tanto, la respuesta es no.

Uh Swift fue creado para iOS y desarrollado por Apple Inc. No tiene sentido por qué Google o Android incluso considerarían usar un lenguaje de programación compilado de su principal competidor

Honestamente, no hay absolutamente ninguna posibilidad de que lo hagan. Google tiene suficientes idiomas que ellos mismos hacen y mantienen.

Sí. Esta es la posibilidad de que Google casi en el futuro adopte Swift en Android. Si sucede, es increíble para todos.

Nunca he oído hablar de eso hasta ahora. Pero sería realmente bueno si Google lo hace porque pasé mucho tiempo aprendiendo Swift. Sería bueno no tener que mover Java, aunque no tengo nada en contra de Java.

More Interesting

¿Cuál es el mejor: regulador de CPU, I / O Scheduler o Kernel para un ahorro máximo de energía?

¿Cuál es el mejor instituto de capacitación de aplicaciones de Android en Chandigarh?

Si tengo antecedentes de PHP, ¿está bien comenzar a escribir mi propia aplicación de Android y aprender sobre la marcha, o debería pasar unas semanas en Core Java?

¿Cuánto gana su aplicación de Android por mes a través de anuncios?

¿Dónde puedo aprender el desarrollo de Android (ver descripción)?

Cómo ejecutar la aplicación en Android Studio sin un cable de conexión

Cómo hacer un hash de un sitio web y comparar los cambios en Android

Cómo dar entradas y obtener resultados en la aplicación de Android desde un sitio web

¿Cuáles son las aplicaciones esenciales necesarias para un nuevo usuario móvil de Android?

¿Cuáles son algunas ideas para desarrollar aplicaciones de Android basadas en la ubicación?

Tenemos puertas cerradas con RFID en la universidad. ¿Cómo puedo hacer que mi teléfono Android emule mi tarjeta de identidad de estudiante y abra puertas cerradas con RFID?

¿Qué plataforma debo usar para desarrollar aplicaciones de Android?

Si voy a desarrollar una aplicación en Xamarin, ¿necesito diseños para iOS y Android?

¿Cuál es la aplicación de Android más útil para citas de Instagram con las mejores características?

Si es un desarrollador de iOS, ¿cuál es la mejor y más rentable manera de crear una versión de Android de su aplicación?