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

Vous êtes nouveau sur Developpez.com ? Créez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Créez-en un en quelques instants, c'est entièrement gratuit !

Si vous disposez déjà d'un compte et qu'il est bien activé, connectez-vous à l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

JUniversal : Microsoft facilite le développement multiplateforme en Java
L'outil open source permet de traduire du code Java en C#, C++/Objective C

Le , par Olivier Famien

148PARTAGES

6  0 
Avec la prolifération des smartphones et des tablettes s’exécutant sur divers systèmes d’exploitation, les développeurs pour cibler une large gamme de terminaux et réduire les coûts de développement se tournent vers le développement cross-platform.

Le développeur Web a, par exemple, à sa disposition le célèbre framework PhoneGap, qui permet de créer des applications hybrides HTML5 cross-platform. Pour le développeur .NET, il peut se tourner vers Xamarin, qui permet de développer son application en C# et déployer sur Android ou encore iOS. Plusieurs outils sont offerts aux développeurs Java, notamment RoboVM, qui permet de compiler du code Java en application native iOS.

Microsoft, désormais fervent défenseur et acteur de l’open source, s’engage à simplifier encore plus le quotidien des développeurs Java qui souhaitent développer une seule fois et déployer partout. La division open source de la firme vient de publier JUniversal, un outil qui a pour vocation de transcrire le code source d’une application mobile écrite en java vers différentes plateformes.

Pour l’instant, seule la traduction du code Java en code C# est offerte. Des travaux sont en cours pour étendre les mêmes fonctionnalités vers C++/Objective C.

L’outil est disponible sous une licence open source et intègre une caractéristique intéressante qui est de produire des traductions de code dans un format similaire à celui écrit par une personne. Cela signifie que seront présents dans le code les commentaires ainsi que le formatage tel qu’on le retrouve dans les applications écrites par un homme.

À côté de ces fonctionnalités internes, il est possible d’en ajouter d’autres grâce à un ensemble des bibliothèques appelé JSimple et qui peut être téléchargé sur cette page. Pour ceux qui souhaitent obtenir le fichier zip de l’application, il est disponible sur GitHub. Pour mieux comprendre son architecture, on peut se référer au support ci-dessous.


Le projet est donc lancé et Microsoft affiche des arguments de plus en plus convaincants dans le domaine de la portabilité.

Télécharger JUniversal

SOURCE : Microsoft Open Technologies

Et vous ?

Que pensez-vous de cet outil ? Pourrait-il remplacer celui que vous utilisez déjà ?

Une erreur dans cette actualité ? Signalez-nous-la !

Avatar de bouye
Rédacteur/Modérateur https://www.developpez.com
Le 12/02/2015 à 3:40
Une très bonne initiative. J'apprécie de plus en plus la direction que prend Microsoft ces derniers temps.
1  0 
Avatar de GLDavid
Expert confirmé https://www.developpez.com
Le 12/02/2015 à 12:04
Hello,
Excellent!
Je dois dire qu'étant ancien développeur Java, j'avais au début mal accueilli .NET.
Maintenant, je dois admettre que la plate forme est très bonne et rapide.
Cependant, je considérais qu'évidemment:
1) cela restait trop cantonné à l'univers Windows
2) pauvreté des APIs
Maintenant, ces arguments ne sont plus recevables. Bravo à Microsoft d'oser sortir de son carcan propriétaire et d'exposer son travail, voir d'en faciliter la transition.

@++
1  0 
Avatar de Shuty
Membre éprouvé https://www.developpez.com
Le 12/02/2015 à 9:58
Entre JUniversal & Xamarin, on ne sait plus quoi choisir pour faire du native cross platform... Personne n'a essayé ces deux solution pour nous refaire un retour ?
0  0 
Avatar de Issam
Membre confirmé https://www.developpez.com
Le 12/02/2015 à 11:21
Même si je ne fais pas de java, je salue comme mon collègue cette initiative de la part de Microsoft .

Bravo !
0  0 
Avatar de doderic
Membre habitué https://www.developpez.com
Le 13/02/2015 à 7:12
C'est bien tout ça mais il y a vraiment mieux avec Codename One. Je n'arrive pas à concevoir qu'un framework aussi complet, puissant, opensource et connu dans le monde anglophone est toujours aussi inconnu sur developpez.com. Si vous voulez vraiment faire du multiplateforme en Java, faites un tour www.codenameone.com et amusez-vous. C'est du bon et ça vient en plus d'Israël ;-)
0  0 
Avatar de landry161
Membre éprouvé https://www.developpez.com
Le 19/02/2015 à 13:52
Citation Envoyé par bouye Voir le message
Une très bonne initiative. J'apprécie de plus en plus la direction que prend Microsoft ces derniers temps.
Je dirai même plus
0  0 
Avatar de landry161
Membre éprouvé https://www.developpez.com
Le 19/02/2015 à 13:55
Citation Envoyé par doderic Voir le message
C'est bien tout ça mais il y a vraiment mieux avec Codename One. Je n'arrive pas à concevoir qu'un framework aussi complet, puissant, opensource et connu dans le monde anglophone est toujours aussi inconnu sur developpez.com. Si vous voulez vraiment faire du multiplateforme en Java, faites un tour www.codenameone.com et amusez-vous. C'est du bon et ça vient en plus d'Israël ;-)
Merci pour l'info
0  0 
Avatar de Matthieu Vergne
Expert éminent https://www.developpez.com
Le 19/02/2015 à 15:55
Sauf qu'ils proposent de traduire du code Java, qui est déjà cross-platform, en d'autres langages ? Je sais pas pour vous mais mes programmes Java tournent très bien sous Windows. Pourquoi je devrais les traduire en C#? J'ai l'impression qu'ils veulent mettre à bas l'idée d'un "langage" cross-platform au profit de langages platform-specific associés à un "traducteur" cross-platform. Pour moi, c'est une attaque évidente à la philosophie de Java. Et commercialement, s'ils arrivent à faire valoir leur solution, ça leur permet de dévaloriser l'argument "langage cross-platform", et donc de convertir les gens à la philosophie "pas de convergence entre les plateformes, un traducteur est bien plus pratique". C'est chacun dans ses tranchées, donc Microsoft fais ce qu'il veut chez lui et ceux qui veulent que ça s'applique ailleurs doivent passer par son outil. C'est Open Source, donc pas de risque ? Avec Android on connait déjà un système Open Source dont l'éditeur a tenté de reprendre le contrôle progressivement. Les langages informatiques évoluant continuellement, il est évident qu'un tel traducteur devra toujours être maintenu. De plus, ce genre de modifs ne me semble pas des plus triviales au point que n'importe qui puisse reprendre le projet. Et c'est là une contrainte majeure qui permettrait à Microsoft, tout comme Google avec Android, de reprendre la main vers du non Open Source quand sa solution sera populaire.

Donc autant je vois pas du tout la raison de traduire du Java d'un point de vue pratique, autant d'un point de vue stratégique pour Microsoft ça me semble être une idée des plus lumineuses. Enfin pour eux, pas pour moi.
0  0 
Avatar de landry161
Membre éprouvé https://www.developpez.com
Le 19/02/2015 à 16:25
Citation Envoyé par Matthieu Vergne Voir le message
J'ai l'impression qu'ils veulent mettre à bas l'idée d'un "langage" cross-platform au profit de langages platform-specific associés à un "traducteur" cross-platform. Pour moi, c'est une attaque évidente à la philosophie de Java.
Pourquoi?
0  0 
Avatar de Matthieu Vergne
Expert éminent https://www.developpez.com
Le 19/02/2015 à 18:14
Parce que c'est justement un des arguments phare pour passer à Java et une des raisons principales de son existence : il est cross-platform grâce à sa machine virtuelle (qui inclut déjà tout le platform-specific). Java foncitonne très bien sous Windows, alors pourquoi voudrait-on le transformer en C# ? À part une préférence de langage, j'en vois pas l'intérêt, mais dans ce cas on programme directement dans le langage qu'on préfère. Par ailleurs, je parle de Windows mais j'imagine que Java tourne aussi sur iOS, mais je ne m'avancerai pas sur "à quel point", j'ai pas essayé et je ne suis pas trop les news Apple.
0  0