IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Affichage des résultats du sondage: Quelle est la meilleure alternative aux API Java d’Oracle pour Android ?

Votants
39. Vous ne pouvez pas participer à ce sondage.
  • Swift est une meilleure alternative à Java pour Android

    15 38,46%
  • Kotlin semble être beaucoup plus intéressant

    1 2,56%
  • Je préfère continuer avec Java via l’approche OpenJDK

    16 41,03%
  • Autre (à préciser dans les commentaires)

    4 10,26%
  • Pas d'avis

    3 7,69%
Android Discussion :

Google considérerait Swift comme un langage de première classe pour Android


Sujet :

Android

  1. #1
    Chroniqueur Actualités
    Avatar de Michael Guilloux
    Homme Profil pro
    Data Consultant
    Inscrit en
    Juillet 2013
    Messages
    2 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Data Consultant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2013
    Messages : 2 875
    Points : 86 930
    Points
    86 930
    Billets dans le blog
    2
    Par défaut Google considérerait Swift comme un langage de première classe pour Android
    Google considérerait Swift comme un langage « de première classe » pour Android
    L’OS mobile de Google pourrait-il basculer de Java à Swift ?

    Un média US rapporte que selon ses sources, Google serait en train d’étudier la possibilité d’un système Android avec Swift, le langage de programmation multiparadigme d’Apple, comme un langage de « première classe ». Cela veut-il dire que Google envisagerait la possibilité de faire basculer Android de Java vers Swift ?

    Pourquoi cela serait-il possible ? Cela fait maintenant six ans que Google est trainé devant les tribunaux par Oracle qui exige que le géant de Mountain View lui reverse des sommes énormes pour violation de droits d’auteur relatifs à des API Java. Ayant utilisé des éléments de base de Java dans son système d’exploitation mobile, Google est accusé par Oracle d’avoir copié dans Android « la structure, la séquence et l’organisation » de 37 API Java, sans autorisation. Les deux parties devront encore comparaître le mois prochain devant les tribunaux.

    Pendant ce temps, Google a déjà commencé à explorer d’autres pistes pour ne plus être confronté à ce genre de situations à l’avenir. Pour les prochaines versions d’Android, le géant de la recherche en ligne a décidé de remplacer son implémentation des API Java par OpenJDK, la version open source du JDK d’Oracle. « Dans notre version d’Android à venir, nous avons prévu de retirer les bibliothèques du langage Java d’Android pour nous orienter vers une approche basée sur OpenJDK », a rapporté un porte-parole de la société en décembre dernier.

    Si Google a donc décidé d’abandonner les API Java d’Oracle, pourquoi ne pas alors profiter pour se tourner vers Swift ? Dévoilé en juin 2014 au WWDC, le salon annuel d’Apple dédié aux développeurs sur Mac et iOS, Swift a rapidement gagné en popularité tendant à faire oublier Objective-C. De nombreux développeurs reconnaissent à Swift de rendre plus facile de construire des logiciels qui sont rapides et sûrs par conception. La montée en puissance du langage multiparadigme d’Apple est également observée au niveau des différents indices de popularité des langages de programmation (TIOBE, PYPL, RedMonk), alors qu’un analyste de RedMonk témoigne que « la croissance que Swift a connue est essentiellement sans précédent dans l’histoire de ces classements ». Également open source depuis décembre dernier, Swift semble encore avoir de très beaux jours devant lui, avec une communauté déjà dévouée.

    Si Google officialise ses plans, il ne faudrait toutefois pas s’attendre à ce que la mise en œuvre soit effective de sitôt. Cela nécessiterait en effet une refonte complète de la plateforme Android, qui ne pourrait être implémentée que dans un moyen ou long terme. Il faudrait par exemple un runtime pour exécuter Swift sur Android, mais Google devrait également refaire entièrement sa bibliothèque standard pour supporter le langage de programmation d’Apple. Certaines API de bas niveau écrites en C++ ainsi que des API de haut niveau écrites en Java devraient être réécrites.

    Cependant, faire de Swift le langage de base d’Android n’est pas une mission impossible. À la fin de l’année dernière, bien avant que Swift devienne open source, un développeur du nom de Romain Goyet est parvenu à faire fonctionner du code Swift sur Android en utilisant le kit de développement natif Android NDK. C’est donc une preuve que Google peut envisager une expérience au-delà de Java pour son système d’exploitation mobile open source.

    Cette information ressort d’une réunion de discussion à Londres entre Google, Facebook et Uber à propos du nouveau langage d’Apple. Les deux autres entreprises, Facebook et Uber, envisageraient également de placer Swift plus au centre de leurs opérations.

    Toujours dans la recherche d’un langage de première classe pour Android, Kotlin serait également ressorti dans les discussions internes chez Google. Kotlin est considéré comme un langage qui peut fonctionner partout où Java fonctionne. Il pourrait donc demander beaucoup moins de travail pour obtenir un langage autre que Java qui soit opérationnel pour Android. Comme Swift, Kotlin est orienté objet avec un accent sur la sécurité. En plus, il fonctionne avec Android studio, l’IDE officiel de Google pour le développement Android. Ce qui n’est pas le cas de Swift actuellement. Le problème, d’après les sources, est que Google estime que Kotlin est un peu trop lent lors de la compilation. La transition pourrait également être pénible pour les développeurs par rapport à Swift.

    Source

    Et vous ?

    Que pensez-vous d’adopter Swift comme langage de base pour Android ? Qu’en est-il de Kotlin ?
    Pensez-vous qu’il s’agisse d’une meilleure alternative que l’approche basée sur l’OpenJDK ?

    Voir aussi :

    Un développeur parvient à faire fonctionner du code Swift sur Android, en attendant la sortie de Swift sous licence open source

    Bientôt le portage de Swift sur Android ? Un contributeur présente « le premier exemple d'une compilation croisée à l'extérieur de Darwin »
    Contribuez au club : Corrections, suggestions, critiques, ... : Contactez le service news et Rédigez des actualités

  2. #2
    Expert confirmé

    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2010
    Messages
    2 065
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Novembre 2010
    Messages : 2 065
    Points : 4 229
    Points
    4 229
    Par défaut
    Et pourquoi pas C# ?, avec l'ouverture de Microsoft vers l'open source ça pourrait être une bonne alternative, surtout que c'est un langage très proche du Java, donc les développeurs Java pourront plus vite s'y habituer.

  3. #3
    Membre averti
    Inscrit en
    Octobre 2005
    Messages
    135
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 135
    Points : 391
    Points
    391
    Par défaut
    Android y gagnerai énormément en choisissant Swift.
    ça permettrai de faire du développement multi plateforme beaucoup plus facilement (même core, module spécifique a l'os).

    Citation Envoyé par youtpout978 Voir le message
    Et pourquoi pas C# ?, avec l'ouverture de Microsoft vers l'open source ça pourrait être une bonne alternative, surtout que c'est un langage très proche du Java, donc les développeurs Java pourront plus vite s'y habituer.
    Ce point est vrai, mais android y gagnerai beaucoup moins.
    Par contre Windows mobile y gagnerai énormément.

    Je pense que ça va se jouer à coup de gros sous en Oracle qui fera peut être machine arrière en voyant ce qu'il perde, Apple et Micro$oft.

  4. #4
    Membre émérite
    Profil pro
    retraité
    Inscrit en
    Décembre 2010
    Messages
    804
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Décembre 2010
    Messages : 804
    Points : 2 299
    Points
    2 299
    Par défaut
    Ils auraient du faire comme BlackBerry, interface compatible Qt. Et description en QML. Cela aurait évité un procès, permis de faire du cross-plateforme. Free s'y est mis pour programmer la freebox. Après un "binding" vers un autre langage aurait été possible aussi.

  5. #5
    Membre régulier
    Homme Profil pro
    Développeur Java / JEE / JavaScript
    Inscrit en
    Juillet 2012
    Messages
    36
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Java / JEE / JavaScript
    Secteur : Service public

    Informations forums :
    Inscription : Juillet 2012
    Messages : 36
    Points : 73
    Points
    73
    Par défaut
    Je ne vois pas l'intérêt, dans ce cas autant que Google arrête les smartphones et laisse le marché à Apple...

    A la place de Google je resterai en Java ou alors je passerai en JS avec un NodeOS pour smartphone histoire de déchirer les perfs !

  6. #6
    Membre émérite
    Homme Profil pro
    Ingénieur en génie logiciel
    Inscrit en
    Juin 2012
    Messages
    851
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Ingénieur en génie logiciel
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Juin 2012
    Messages : 851
    Points : 2 424
    Points
    2 424
    Par défaut
    Ils vont passer à openjdk, il y a déjà un bon travail à faire de leur part et il pourrait ensuite passer à swift. Un autre changement.

    L'écosystème de Java est de très loin supérieur à swift, ne serait qu'en outils de dev, framework, librairie et nombre de développeur.
    Passer à swift c'est faire table rase de tout ça. Alors que passer à openjdk règle le problème à Oracle.

    Je doute fort qu'oracle est la somme demandé pour 37 api qui ne sont pas primordiale, le passage à openjdk semble s'est fait rapidement.

    Ne pas oublier que si Oracle gagnerait, c'est tout le domaine logiciel américain qui en souffrirait au niveau de l'interopérabilité

  7. #7
    Membre confirmé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2013
    Messages
    139
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Janvier 2013
    Messages : 139
    Points : 459
    Points
    459
    Par défaut
    Je suis pas convaincu de cette idée. Java possède l'atout d'avoir un écosystème ultra complet, d'être maitrisé et connu par ses utilisateurs. C'est un langage propre, qui impose la rigueur.

    Swift est un langage encore mal connu, trop jeune, sans un écosystème réel et sans intérêt autre que iOs d'un point de vue professionnel.
    La force d'Android, c'était qu'en utilisant Java, on pouvait très facilement apprendre les bases du dev' Android vu que Java est un langage déjà répandu, aussi bien en milieu scolaire que professionnel.

    Quant à l'idée de proposer Js : Non. Déjà parce que niveau perfs y'a déjà des solutions C++ en Android, donc les perfs d'un pauvre langage de script hein. Ensuite Js ça reste un langage bricolé avec plein de défauts graves qui seraient une régression par rapport à Java : Js est mal documenté, Js est confus, Js est mal maitrisé, Js est pas facile à débugger, j'en passe les meilleures.


    Donc personnellement je pense que rester sur une base Java/C++ c'est la meilleure option : Java pour les applications "classiques" avec toute sa force (rigueur, gestion de dépendances, puissance, écosystème, simplicité, performances par rapport à un langage de script), C++ quand l'application a besoin de grosses performances et d'optimisation (comme un jeu, par exemple), quand Java ne suffit plus.

  8. #8
    Membre averti
    Profil pro
    Inscrit en
    Mars 2012
    Messages
    145
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2012
    Messages : 145
    Points : 392
    Points
    392
    Par défaut
    Citation Envoyé par Mouke Voir le message
    Quant à l'idée de proposer Js : Non. Déjà parce que niveau perfs y'a déjà des solutions C++ en Android, donc les perfs d'un pauvre langage de script hein. Ensuite Js ça reste un langage bricolé avec plein de défauts graves qui seraient une régression par rapport à Java : Js est mal documenté, Js est confus, Js est mal maitrisé, Js est pas facile à débugger, j'en passe les meilleures.
    +1.

    Les délires de la commu Javascript, ça va bien 2 minutes.

  9. #9
    Membre chevronné
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2007
    Messages
    884
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Juillet 2007
    Messages : 884
    Points : 2 018
    Points
    2 018
    Par défaut
    Le but est de mettre la pression sur Oracle pour montrer qu'il perdrait plus que Google en perdant Androïd car Java, à part sur Androïd est en perte de vitesse.

    Mais non, Google ne passera pas sur Swift, il faudrait réécrire toutes les applications (outre le fait de réécrire tous le coeur Androïd)... c'est trop de travail. Par contre oui, Google passera sur OpenJDK ou C++ pour se libérer totalement d'Oracle. Le problème fondamental est que les "brevets" que revendique Oracle n'en sont pas vraiment ce sont des "idées" alors il y aura toujours une faiblesse. Et Google serait donc bien tenté de changer de langage mais il ne le peux pas.
    Tout ce que j'écris est libre de droits (Licence CC0) et je vous incite à faire de même.

  10. #10
    Expert confirmé
    Avatar de TiranusKBX
    Homme Profil pro
    Développeur C, C++, C#, Python, PHP, HTML, JS, Laravel, Vue.js
    Inscrit en
    Avril 2013
    Messages
    1 476
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur C, C++, C#, Python, PHP, HTML, JS, Laravel, Vue.js
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2013
    Messages : 1 476
    Points : 4 805
    Points
    4 805
    Billets dans le blog
    6
    Par défaut
    Citation Envoyé par Mouke Voir le message
    Quant à l'idée de proposer Js : Non. Déjà parce que niveau perfs y'a déjà des solutions C++ en Android, donc les perfs d'un pauvre langage de script hein. Ensuite Js ça reste un langage bricolé avec plein de défauts graves qui seraient une régression par rapport à Java : Js est mal documenté, Js est confus, Js est mal maitrisé, Js est pas facile à débugger, j'en passe les meilleures.
    c'est vôtre avis très bien mais le seul fait réel que vous citez est "Js est pas facile à débugger", le reste c'est de l'ordre de la querelle de cloché (plus on tape plus ça rentre ?)
    Il est certain que C++ écrase tout mais de la à dire que Java est plus rapide que Node.js c'est soit nier les fait soit du fanatisme, à non c'est du même ordre

    Quand au changement de langage d'Android je m'en fiche un peut, quand je doit sortir quelque chose dessus c'est une app Cordova de m**de
    Rien, je n'ai plus rien de pertinent à ajouter

  11. #11
    Expert confirmé

    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2010
    Messages
    2 065
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Novembre 2010
    Messages : 2 065
    Points : 4 229
    Points
    4 229
    Par défaut
    Citation Envoyé par TiranusKBX Voir le message
    c'est vôtre avis très bien mais le seul fait réel que vous citez est "Js est pas facile à débugger", le reste c'est de l'ordre de la querelle de cloché (plus on tape plus ça rentre ?)
    Il est certain que C++ écrase tout mais de la à dire que Java est plus rapide que Node.js c'est soit nier les fait soit du fanatisme, à non c'est du même ordre

    Quand au changement de langage d'Android je m'en fiche un peut, quand je doit sortir quelque chose dessus c'est une app Cordova de m**de
    Là tu compares Node.Js à J2EE, j'ai des doutes sur le faite qu'une app desktop/mobile en Node.Js soit plus performante en général qu'une app en Java.

  12. #12
    Membre confirmé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Janvier 2013
    Messages
    139
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Janvier 2013
    Messages : 139
    Points : 459
    Points
    459
    Par défaut
    Citation Envoyé par TiranusKBX Voir le message
    c'est vôtre avis très bien mais le seul fait réel que vous citez est "Js est pas facile à débugger", le reste c'est de l'ordre de la querelle de cloché
    Je pense qu'il y aurait un débat intéressant à ouvrir sur ce point, et que j'aurais beaucoup à apprendre mais ce n'est pas l'endroit pour ce débat.

  13. #13
    Membre expert
    Profil pro
    undef
    Inscrit en
    Février 2013
    Messages
    957
    Détails du profil
    Informations personnelles :
    Localisation : France, Lot (Midi Pyrénées)

    Informations professionnelles :
    Activité : undef

    Informations forums :
    Inscription : Février 2013
    Messages : 957
    Points : 3 523
    Points
    3 523
    Par défaut
    Le succès de swift c'est surtout l'absence de choix pour les développeurs sur Apple. Si google voulait vriament se débarasser de java, le groupe aurait les moyens de créer son propre langage maison... En fait, ils en ont déjà deux à leur actif : go et dart.

  14. #14
    Modérateur
    Avatar de Hizin
    Homme Profil pro
    Développeur mobile
    Inscrit en
    Février 2010
    Messages
    2 180
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France

    Informations professionnelles :
    Activité : Développeur mobile

    Informations forums :
    Inscription : Février 2010
    Messages : 2 180
    Points : 5 072
    Points
    5 072
    Par défaut
    Plus Kotlin, créé par JetBrains, éditeur et concepteur de la plateforme IntelliJ sur laquelle se base Android Studio.
    C'est Android, PAS Androïd, ou Androïde didiou !
    Le premier est un OS, le second est la mauvaise orthographe du troisième, un mot français désignant un robot à forme humaine.

    Membre du comité contre la phrase "ça marche PAS" en titre et/ou explication de problème.

    N'oubliez pas de consulter les FAQ Android et les cours et tutoriels Android

  15. #15
    Candidat au Club Avatar de batman242
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2016
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Sénégal

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2016
    Messages : 1
    Points : 2
    Points
    2
    Par défaut
    Basculer en swift intéressant mais bon pas vraiment original
    je pense aussi qu'il n'en serait pas nécessaire Android est déjà bien assez intéressant comme ça

  16. #16
    Membre confirmé Avatar de LapinGarou
    Homme Profil pro
    R&D Developer
    Inscrit en
    Octobre 2005
    Messages
    341
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : R&D Developer
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Octobre 2005
    Messages : 341
    Points : 479
    Points
    479
    Par défaut
    Il y a toujours eu des guéguerres entre languages, le principal étant d'utiliser le bon langage pour la tâche à réaliser (ex: js pour du bas niveau ça va être difficile...) et le bon algo (je dirai même surtout l'algo).

  17. #17
    Membre actif

    Homme Profil pro
    Consultant en technologies
    Inscrit en
    Août 2012
    Messages
    40
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cambodge

    Informations professionnelles :
    Activité : Consultant en technologies
    Secteur : Conseil

    Informations forums :
    Inscription : Août 2012
    Messages : 40
    Points : 254
    Points
    254
    Par défaut Pourquoi pas Go?
    Go peut être cross-compilé pour Android et iOS.
    Très performant (environ 15%-20% par rapport à C).
    Implémente un ramasse-miette.
    Pensé pour la programmation concurrente.
    Et une refonte des API leur permettrait de se débarrasser de tout problème de procès.

  18. #18
    Membre expert Avatar de air-dex
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    1 653
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 1 653
    Points : 3 773
    Points
    3 773
    Par défaut
    Swift langage de première classe pour Android ou comment remplacer "Google vs. Oracle" par "Google vs. Apple". Google n'aurait ainsi pas retenu la leçon. Comme le dit bbalet c'est Go qu'ils doivent choisir, ne serait-ce que pour avoir une tranquillité juridique.
    "Ils ne savaient pas que c'était impossible alors ils l'ont fait." Mark Twain

    Mon client Twitter Qt cross-platform Windows et Linux. (en cours de développement).

  19. #19
    Membre expert
    Profil pro
    undef
    Inscrit en
    Février 2013
    Messages
    957
    Détails du profil
    Informations personnelles :
    Localisation : France, Lot (Midi Pyrénées)

    Informations professionnelles :
    Activité : undef

    Informations forums :
    Inscription : Février 2013
    Messages : 957
    Points : 3 523
    Points
    3 523
    Par défaut
    J'ajouterais que l'apparente clarté de swift me semble en grande partie due à sa jeunesse qui le préserve des pollutions induites par le "sucre syntaxique". Ça semble être une bonne idée pour les experts qui pissent du code depuis des lustres, mais pour un débutant, je pense que ça a tendance à compliquer inutilement la compréhension du code en lecture tant que toutes les variantes syntaxiques ne sont pas connues ; et depuis quelques années, chaque mise à jour majeur de java apporte son lot de sucre syntaxique à l'utilité douteuse.

  20. #20
    Membre régulier
    Profil pro
    Inscrit en
    Juillet 2010
    Messages
    53
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2010
    Messages : 53
    Points : 72
    Points
    72
    Par défaut
    Java impose la rigueur ? Ah bon. Il faut le faire savoir à ceux qui développent des applications qui veulent avoir accès à tout, y compris à l'IMEI... Pour le reste, apprenez à écrire quelque chose qui tourne sur tout support, quel que soit l'OS, mobile ou fixe. Je savais le faire fin 2002, avec du Java, et ce ne serait plus possible maintenant ? La bonne blague !

Discussions similaires

  1. Réponses: 3
    Dernier message: 07/12/2010, 16h49
  2. Réponses: 0
    Dernier message: 07/12/2010, 13h26

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo