Jack et Jill : les prochains compilateurs pour Android ?
Google introduit discrètement ceux-ci dans la dernière révision du SDK Android

Le , par Hinault Romaric, Responsable .NET
Google a mis les développeurs au centre d’Android 5.0 Lollipop, la dernière version majeure de son système d’exploitation mobile.

Lollipop introduit pratiquement 5000 nouvelles API et de nouveaux frameworks, dont le nouveau « Extension Pack », qui permettra aux développeurs de jeux de bénéficier de la tesselation et des shaders de géométrie pour créer des jeux « du niveau d'un PC ».

De plus, il embarque un nouvel environnement d’exécution baptisé ART, qui améliore d’un facteur de quatre les performances des nouvelles applications, et double les performances d’applications Android existantes, sans aucune modification de code.

Et ce n’est pas tout ! Google a discrètement procédé à des modifications des outils de compilation pour Android, pour prendre en charge une nouvelle paire de compilateurs, qui a été baptisée « Jack et Jill. »

Les traces de Jack et Jill ont été découvertes par le développeur Eric LaFortune, directeur technique de Saikoa, une entreprise spécialisée dans le développement de solutions pour l’optimisation et l’obfuscation d’applications Java et Android. Les outils ont été introduits par Google dans les outils de build pour le SDK Android 5.0, révision 1 (API 21.1).

Jack et Jill tireraient leur source de FlexyCore, la start-up française spécialisée dans l’optimisation des performances des terminaux mobiles, rachetée par Google en 2013. Jack et Jill ont pour objectif d’accélérer le développement et booster les performances d’applications Android.

Les compilateurs ne sont pas encore activités par défaut. Ils peuvent être utilisés sous forme de plugin pour Android Studio via la directive « useJack true » dans le fichier de configuration de l’outil de build gradle.


Les compilateurs Jack et Jill se positionnent comme des intermédiaires entre le code source du développeur et la machine virtuelle Dalvik ou ART (Android Runtime).

Concrètement, actuellement, pour une application Android, le code Java est compilé en bytecode Java en utilisant le compilateur javac d’Oracle, avant d’être à nouveau compilé en exécutable Dalvik (.dex) en utilisant l’outil Dex. Désormais, avec Jack et Jill, le compilateur d’Oracle ne sera plus utilisé. Jack et Jill se chargeront de transformer le code Java en bytecode Davilk en utilisant une nouvelle représentation de bytecode intermédiaire appelée « Jayce ».


Pourquoi avoir recours à une paire de compilateurs ? En effet, Jill fonctionne comme un précompilateur, qui se charge de convertir les classes et bibliothèques Java en bytecode Jayce. Le bytecode Jayce est ensuite utilisé par Jack dans son propre processus de compilation, pour produire la sortie « .dex », compréhensible par Davilk.


Pour l’instant, Google n’a encore fait aucune mention officielle de « Jack et Jill ». Ces outils sont encore au stade de préversion. Pour Lafortune, il s’agit pour Google de rationaliser le processus de compilation pour Android et d’améliorer les performances lors des « build ».

Source : Billet de blog d'Eric LaFortune

Et vous ?

Que pensez-vous de Jack et Jill ?


Vous avez aimé cette actualité ? Alors partagez-la avec vos amis en cliquant sur les boutons ci-dessous :


 Poster une réponse

Avatar de yapiti yapiti - Nouveau membre du Club http://www.developpez.com
le 07/12/2014 à 14:49
Pour avoir essayé j'ai eu le droit à :
Code : Sélectionner tout
GC overhead limit exceeded
.
Apparemment 1Go de RAM n'est plus suffisant pour une compilation.
Avatar de Olivier Famien Olivier Famien - Chroniqueur Actualités http://www.developpez.com
le 07/12/2014 à 18:23
[Pour Lafortune, il s’agit pour Google de rationaliser le processus de compilation pour Android et d’améliorer les performances lors des « build ».]

Peut-être aussi à cause du conflit qui oppose Google a Oracle sur les api java, allez savoir.
Offres d'emploi IT
Lead developpeur php back end h/f
Adequat Tertiaire - Auvergne - Clermont-Ferrand (63000)
Développeur frontend H/F
Alaloop - Ile de France - Bidart (64210)
Développeur .net h/f
CRESCENDO BROTTEAUX - Ile de France - Paris (75000)

Voir plus d'offres Voir la carte des offres IT
Contacter le responsable de la rubrique Accueil