desde a seguinte web, Nate Swanner hoxe sorprendeu a toda a comunidade de desenvolvementos de aplicacións móbiles con Bomba de novas: Google podería estar a considerar Swift como o primeiro nivel de desenvolvemento en Android, para substituír a Java.
Google VS Oracle
Pero para entender ben a noticia, ten que afondar un pouco no histórico de Java e Google, así como falar sobre a terceira discordia nesta relación: o propietario de Java, Oracle. En 2012, Oracle esixiu a Google por usar certas bibliotecas Java sen permiso dentro de Android. Porque algúns dirán que Java é de código aberto e, polo tanto, Google non debe pagar nada. Verdade: pero tamén é que, aínda que a lingua é de código aberto, certas bibliotecas clave (APIs) clave para Android están suxeitas a un pagamento para a explotación comercial. E aínda que Google non recibe beneficio directo de Android, se o obtén indirectamente polo que Oracle reclama a súa parte do bolo. En total, 9.300 millóns de dólares, que se di pronto. Unha cantidade que é o dobre de todo o alfabeto do conglomerado emprendedor (ao que pertence Google) o último trimestre.
Deles 8.829 millóns corresponden ao partido que Oracle cre que depende do total que estima que Google entrou durante a vida de Android a través de Google Play Store ou coa venda de contido e publicidade. 37 APIs que Google declara usar como uso xusto (uso razoable) e que Oracle nega o maior.
Swift, a alternativa de código aberto
O artigo da seguinte web pon en Unha situación dunha reunión que tivo lugar en decembro entre tres grandes: Google, Uber e Facebook. Esta reunión, que tivo lugar en Londres, tratada con Swift eo seu recente lanzamento como lingua de código aberto. Certas fontes confirmaron a seguinte web que Google está a pensar en facer a linguaxe de primeiro nivel rápido, sendo a primeira alternativa a Java, posteriormente a substituílo definitivamente a longo prazo. E, por outra banda, tanto Uber como Facebook tamén xorden migrar todo o seu código e desenvolvemento ao novo idioma, non só as aplicacións, se todas as súas APIs e servizos backend.
Analizando isto, a chegada de Swift Un Android significaría algo moi interesante porque Swift non necesita unha máquina virtual e iría dentro dunha capa por debaixo do actual JVM que soporta Java. Isto daría un mellor rendemento ao sistema e hardware sen facer nada máis. O mesmo desenvolvemento sería moito máis rápido e máis eficiente en todos os niveis, porque xa sería compilado a nivel superior e executado máis preto do hardware. Actualmente, o idioma que cumpre este papel pegado ao hardware de Android e que soporta varios compoñentes do JVM é C ++, e isto podería ser substituído por Swift.
sería viable?
Máis e máis empresas migran os seus desenvolvementos a Swift e agora, coa expansión de IBM, comeza a ser o que despreza o seu backend tamén neste idioma. As aplicacións como Pixelmator xa están desenvolvidas en Swift, por citar un mero exemplo e máis e máis empresas comezan a migrar todos os seus desenvolvementos para aproveitar os beneficios da nova lingua. No caso de Android, a adopción de Swift non sería a tolemia e permitiríalles esquecer os problemas de Java, xa que Apple fixo toda a lingua e as súas API completamente gratuítas, sen ningunha restricción máis que a mera autorización en casos específicos.
O problema é a propia estrutura do sistema Android xa que agora ten dúas partes ben diferenciadas: a parte Java JVM que executa gran parte das aplicacións e os servizos do sistema e do NDK compatible que permite o uso doutras linguas como C + + (que usa moitos motores de xogos como unidade ou irreal). Este NDK podería ser modificado para implementar Swift, pero ten o problema que, como tal, permanece como unha ferramenta secundaria, pero non un compoñente principal que permite a execución de compoñentes do sistema. E tamén, como comentamos, o sistema de Android actual ten partes do núcleo en C ++ que terían que ser re-escritos en Swift.
Polo tanto, o primeiro que podemos pensar é iso Android tería que crear unha capa rápida (substituíndo o núcleo actual en C ++) e montar a Java JVM para que o sistema tivese unha coherencia e non perda a compatibilidade. Deste xeito, podes seguir desenvolvendo en Java pero podería traballar coa capa inferior en rápida e realizar programas ou compoñentes do sistema que eran máis eficientes. Como Swift traballa sen problema no kernel de Linux de Android, non habería ningún problema de compatibilidade en calquera lugar do hardware. Pero é curioso pensar niso: unha máquina virtual de Java desenvolvida en Swift.
Con todo, no artigo que nos din que outros idiomas como Kotlin tamén están sendo levantados, tamén de código aberto e que xa permite desenvolver con Android, directamente polo seu JVM. Esta lingua, xera un código intermedio compatible co que xera Java e permite incluso interoperando con el. Polo tanto, sería unha boa alternativa aínda que, como Google viu, sería moito menos eficiente xa que é moi lento na compilación e pouco óptimo nos seus resultados e velocidade, en comparación con Swift que é agora desde o máis eficiente, Linguas rápidas e seguro do panorama de desenvolvemento.
transformación por Swift
A transformación de Swift comeza a chegar. Un empregado de Facebook ten unha solicitude de solicitude no repositorio oficial de Swift chamado “Portar a Android” onde especifica como engadir un obxectivo de Android á compilación da Swift Standard Biblioteca. Ou por exemplo, Uber, está en proceso de migrar todos os seus sistemas, tanto APIs, aplicacións como servidor a Swift, para mellorar a eficiencia do seu servizo.
Grandes empresas e grandes aplicacións apostan pola nova linguaxe , E cada vez que temos opcións máis interesantes como o novo servidor perfecto, que permite unha implantación de servidor de recursos rápidos de forma sinxela e rápida.
Non estamos falando de algo rápido ou inmediato, levará o seu tempo porque require transformacións a nivel técnico e novos desenvolvementos, pero non podemos deixar de pensar que talvez, nun día non moi distante, o importante paso de Apple para facer unha fonte aberta rápida, chegar a un porto para que sexa un idioma universal que Permite desenvolver calquera plataforma. Entón terá que usar as APIs correspondentes de cada sistema, pero ter unha única lingua sen dúbida (ambos frontendes e backend) serán moi prácticos. Entón vai aprender polo seu futuro e boa codificación de mazá.