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 !

JavaPoly.js : importer et appeler du code Java depuis JavaScript
Dans le navigateur grâce à cette bibliothèque JavaScript

Le , par vermine

22PARTAGES

6  0 
JavaPoly.js : importer et appeler du code Java depuis JavaScript
dans le navigateur grâce à cette bibliothèque JavaScript

JavaPoly.js est une bibliothèque JavaScript qui étend le support (polyfill) de la machine virtuelle Java (JVM). Elle importe le code Java existant et l’appelle directement à partir de JavaScript dans le navigateur. La bibliothèque fonctionne même si l’utilisateur n’a pas Java installé sur son ordinateur. Cela permet à Java de pouvoir s'exécuter dans le navigateur sans devoir passer par une applet.

En théorie, tous les langages qui s'exécutent dans la JVM sont supportés par JavaPoly. Par exemple : Groovy, Scala et même Python via Jython.

Cependant, le but premier ici est de faciliter le développement Web en Java. Les efforts sont concentrés sur la performance. Plusieurs développeurs tentent de trouver une alternative au JavaScript qui, malgré sa normalisation, est un langage qui n'est pas beaucoup poussé vers le haut notamment à cause des pratiques historiques. Grâce à une JVM, on peut profiter de la puissance du hardware sans être ralenti par le JavaScript.

Pour l'instant, l'outil est fonctionnel sous Chrome et FireFox. Il est en cours de développement et n'est pas encore considéré comme entièrement stable.

Site officiel.

Et vous ?

Que pensez-vous de JavaPoly et des critiques à l'encontre des performances de JavaScript ?

Retrouver les cours et tutoriels pour apprendre le Java Web et le JavaScript.

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

Avatar de getz85
Membre confirmé https://www.developpez.com
Le 18/05/2016 à 14:53
Citation Envoyé par alves1993 Voir le message
Mais pourquoi, mais pourquoi......
JavaScript n'est pas l'assembleur du web JavaScript est un langage merd*** tout simplement. L'assembleur le vrai est-t’il merdique ? Je doute qu'il soit merdique, il est simplement ultra bas niveau.
Donc arrêté pour une fois de dire que JavaScript est l'assembleur du web.

Que Javascript soit à considérer comme l'assembleur du web, j'en ai strictement rien à faire...

Mais de voir à tout bout de champs (pas seulement toi que j'ai cité hein...) des gens dire "Javascript c'est un langage de merde" alors que la plupart n'ont même pas pris le peine de vraiment l'apprendre et de surtout le comprendre, ça me soule sincèrement...

Bref, pour ce qui est du sujet, ça doit représenter une somme assez considérable de travail pour arriver à ce résultat, mais je ne l'utiliserait certainement pas...
5  1 
Avatar de Gugelhupf
Modérateur https://www.developpez.com
Le 17/05/2016 à 22:02
JavaScript ne va pas devenir l'assembleur du web, JavaScript est l'assembleur du web
3  0 
Avatar de zecreator
Membre expert https://www.developpez.com
Le 18/05/2016 à 14:51
Mais grand dieu, pourquoi vouloir utiliser un autre langage que le Javascript pour faire du web ? Pourquoi persister à vouloir insérer un cube dans un rond ? Est-ce une question de maîtrise du javascript ? Une question de temps de développement (pas envie de refaire mon code Java en Javascript) ? Une question de budget ? Je ne comprend pas en quoi Javascript ne répond pas aux besoins, au point de vouloir le remplacer ?

De toutes façons, même si vous n'aimez pas Javascript, vous êtes obligés de l'utiliser. Désolé de le dire, quelque soient vos intentions (fantasmes), votre code ne fonctionnera pas sans Javascript, à moins de développer vous même un navigateur prévu pour votre langage. Laissez tomber, vous êtes OUT !
3  1 
Avatar de zecreator
Membre expert https://www.developpez.com
Le 23/05/2016 à 11:47
Citation Envoyé par JackJnr Voir le message

PS : t'as des stats pour ta dernière phrase ou c'est juste des mots sur un ressenti ? De ce que j'ai pu voir des nombreux débat du premier langage je n'ai jamais vu trace de JS. Le débat était partagé entre C/C++ java et python. Des extrêmistes parlaient de lisp et de Pascal aussi, mais je crois qu'ils ont perdu leur dernier cheveu blanc depuis belle lurette
Non pas de chiffres, et je pense qu'ils n'existent pas, pour aucun profil. C'est juste un constat personnel. Pour avoir collaboré plusieurs années avec des développeurs J2EE et C, j'ai vite constaté leur enfermement technique. C'est d'ailleurs cela qui m'a pousser à m'éloigner de Java et de C, car c'était trop "élitiste" pour moi. Les codeurs web sont perçus comme des bricoleurs, qui essaient de faire "comme les grands", avec des outils et langages pourris. Une idée reçue, qui ne va même pas jusqu'à jeter un oeil aux technos web.

Deux expériences que j'ai vécues assez significatives du manque d'ouverture des développeurs Java et C.

Un éditeur de logiciel BTP, qui développait massivement pour AS400 et qui avait monté une équipe de dev J2EE pour produire une appli de gestion de stock. Le produit s'est peu vendu, car à l'époque du web, il demandait un déploiement trop important au client (serveur JBOSS, PostgreSQL...). Ne serais-ce que la mise à jour de l'outil, une grosse galère (genre CD ou fichier ZIP à déployer chez le client). J'ai donc proposer de faire l'outil en version SAAS, "full web", qui ne porpose que des avantages pour tout le monde. On m'a rit au nez car le web pouvait pas faire comme Java, et 1 an après le projet était enterré et pour moi c'était la porte.

Un éditeur de logiciel de mesure d'audience : Comme je venais du Java, et qu'ils voulaient faire de web (haaaa, cool), il m'a proposé un poste en Flex. J'avoue j'y ai cru, mais rapidement j'ai vu que l'équipe était faite de développeur C, qui développait des monstres en C (même pas C++), qui utilisait du CSV comme stockage de données. Bref, un outil à l'architecture de malade mental, qui aurait tenu sur 50Mo s'il avait été développé en HTM/Javascript, PHP et MySQL. Mais ces technos, c'est pour les bidouilleurs du dimanche. Quand on est développeur, on code en Java ou en C. je vous le donne en mille (émile), l'outil n'a pas décollé, j'ai été licencié pour cause économique.

Et toujours le même argument : La sécurité. Le Java c'est plus sécurisé. Le Javascript c'est lent, c'est pénible à coder, c'est n'importe quoi.

Après, c'est mon expérience, mais depuis je me méfie des codeurs non-web qui critiquent sans jamais avoir fait l'effort de s'interesser. Juste parce que ces technos les obligent à changer leur habitudes de dev, d'utiliser des outils différents, de prendre un temps d'adaptation. Le changement, ça fait peur.
2  0 
Avatar de Mickael Baron
Responsable Java https://www.developpez.com
Le 17/05/2016 à 20:26
JavaScript va devenir l'assembleur du web.

C'est une bonne approche. Par contre je serais curieux de voir comment se comporte l'outil développeur du navigateur pour le déboggage de ce type d'application. Voit-on le code Java ou JavaScript.

Il ne faut pas oublier que GWT dans la version qui arrive va marier les deux mondes => http://lteconsulting.developpez.com/...gwt/futur-gwt/. Au moins dans GWT quand on fait un debug sous le navigateur on voit le code Java et ça c'est cool.

Mickael
1  0 
Avatar de timidou
Membre régulier https://www.developpez.com
Le 17/05/2016 à 22:19
Super initiative :-)
Mais les 30 Mo à download pour que cela fonctionne, ça va surement en refroidir plus d'un !
1  0 
Avatar de ShaeOuloul
Futur Membre du Club https://www.developpez.com
Le 18/05/2016 à 11:19
Salut tout le monde,

Effectivement, c'est extremement lourd de réimplémenter la JVM dans un navigateur, ca rappelle furieusement le fonctionnement des applets, disparu depuis belle lurette D'ailleurs quelqu'un l'a confirmé dans les commentaires, c'est bien lent.
C'est pourquoi j'ai bien aimé (et contribué) au projet JSweet, c'est un simple transpiler qui permet de reprendre son code métier Java et de le rendre dispo en JS. TypeScript est déjà super ! Mais dans un SI plutôt Java, j'opterais largement plus pour JSweet.

Dans tous les cas, plein de projets existent qui prennent le problème du bon coté et qui rende une JVM en JS obsolète de naissance.

Sujet intéressant en tout cas, et très actuel en entreprise !
1  0 
Avatar de youtpout978
Membre expert https://www.developpez.com
Le 18/05/2016 à 15:39
Je ne dirais pas que JS est un langage de merde mais c'est un langage qui a 10 ans de retard sur les autres, il a très peu de fonctionnalité de base, il est plutôt lent et galère à déboguer, ce qui peut être rebutant quand on vient du monde Java ou .Net.

Et l'assembleur du web c'est pas WebAssembly justement même s'il est pas prêt de débarquer.

Sinon il est possible de faire un copier dans le presse papier je l'ai mis en place dernièrement mais comme d'hab c'est pas fonctionnel avec tous les navigateurs:
Code : Sélectionner tout
1
2
3
        var copyTextarea = document.querySelector('#' + id);
        copyTextarea.select();
            var successful = document.execCommand('copy');
Après l'idée d'une JVM qui pond du JS , on a du Java qui est transpiler en JS qui lui même est interprété par le navigateur, après peut être que des lib comme asm.js sont utilisés mais c'est quand même une sacrée usine à Gaz, pouvant produire des bugs difficile à résoudre.
2  1 
Avatar de getz85
Membre confirmé https://www.developpez.com
Le 18/05/2016 à 15:42
Citation Envoyé par Sodium Voir le message


Si une large proportions de développeurs expérimentés dit que JavaScript est un langage de merde, je pense qu'on peut envisager l'éventualité que JavaScript soit effectivement un langage de merde.
Si beaucoup ne prennent pas la peine de vraiment l'apprendre et le comprendre, ce n'est pas par mauvaise volonté mais tout simplement parce qu'il est profondément contre-intuitif et à la fois trop simple et trop compliqué.
Pourquoi perdre du temps et l'énergie à comprendre le système objet par prototypage de JavaScript alors qu'à peu près tous les autres langages modernes fonctionnent avec des classes ? Ce n'est pas aux utilisateurs de s'adapter à une technologie mais à la technologie de s'adapter pour correspondre aux mieux aux envies des utilisateurs.
Comme le disait Jerry Seinfeld, "Sometimes the road less taken is less taken for a reason."
Et tu le sors d'où ta "large proportion" de développeur expérimentés?
J'ai plutôt l'impression que ceux qui crachent sur javascript ne sont pas vraiment des dev expérimentés, mais ça c'est plutôt mon ressenti.

A l'inverse, je connais des dev expérimentés qui vantent les mérites de JS, y compris des anciens développeurs Java...

La POO est un paradigme efficace, bon nombre de langages modernes s'articulent autour de celui-ci, je te rejoins là dessus. Par contre, ce n'est absolument pas le seul, et avancer qu'un langage qui n'a pas de classe est un langage de merde, c'est très fort (tous les langages fonctionnels te saluent!).

Le problème de ceux qui détestent javascript c'est qu'ils veulent justement à tout prix faire de la POO avec Javascript.
Les ajouts d'ES2015/2016 (le mot clé "class", les arrow functions qui ne redéfinissent pas "this", ...) vont peut-être leur permettre de rentrer plus facilement dans le langage...

Et justement, de par ses ajouts, Javascript s'adapte de plus en plus à ses utilisateurs
3  2 
Avatar de Sodium
Membre extrêmement actif https://www.developpez.com
Le 18/05/2016 à 16:53
Je vois que tu sais de quoi tu parles. Javascript peut utiliser des classes sur les dernières versions de Firefox, et va bientot être déployer sur Chrome et Edge :
https://developer.mozilla.org/fr/doc...erence/Classes

Mais comme tu es un développeur expérimenté, je ne t'apprends rien, hein ?
Étant un développeur expérimenté, j'essaye au maximum de pondre du code compatible avec au moins 95% des navigateurs.
Le fait que chaque navigateur bidouille le langage dans son coin pour lui ajouter des fonctionnalités en espérant être suivi par la concurrence ne me semble par ailleurs pas une preuve d'évolution saine du langage.

De toute manière, il suffit de jeter un oeil à l'histoire de JavaScript depuis ses débuts par Netscape pour se rendre compte qu'il s'agit d'une technologie née de bidouilles et d'ajouts au jour le jour sans réelle stratégie de standardisation.
3  2