compiler en natif [JAVA] - Java - Programmation
Marsh Posté le 29-01-2004 à 16:31:04
je sais que je répond pas à ta question, mais en générale c'est pas une bonne idée de compiler du java en natif.
Pour quelle raison tu veux faire ca ?
Marsh Posté le 29-01-2004 à 23:12:11
bah je voudrais acceleré le tps de reponse de mon GUI... en efait je voudrais une version win et une version linux puis pour mac (bah il y la machine virtuelle)....
Marsh Posté le 29-01-2004 à 23:21:53
3xc4l18ur a écrit : bah je voudrais acceleré le tps de reponse de mon GUI... en efait je voudrais une version win et une version linux puis pour mac (bah il y la machine virtuelle).... |
optimise plutot ton code.
Marsh Posté le 29-01-2004 à 23:23:46
3xc4l18ur a écrit : bah je voudrais acceleré le tps de reponse de mon GUI... |
Alors conçoit-le mieux : tes ListModels, TableModel et les SelectionModel qui vont avec sont-ils adaptés ? as-tu bien séparé interface homme-machine et fonctions du domaine technique ?
Je suis convaincu que le problème vient plus de l'utilisation (et surtout de la documentation) de swing qu'un réel problème d'interprètation du bytecode.
Pose-toi les question essentielles de la complexité de chaque fonction de ton GUI : n'y a-t'il pas des parcours de listes en trop ? des updates inutiles d'objets, trop de mémoire inutilement consomée ? Ne peut-on pas mettre en cache le résultat de certains calculs ?
Marsh Posté le 29-01-2004 à 23:24:30
moi j'attend avec impatience qu'un des auteurs d'idea écrive un bouquin la dessus
Marsh Posté le 29-01-2004 à 23:25:30
le problème n'est-il pas Java ? moi je trouve légitime sa demande.
Marsh Posté le 29-01-2004 à 23:26:14
taz a écrit : le problème n'est-il pas Java ? moi je trouve légitime sa demande. |
non
Marsh Posté le 29-01-2004 à 23:26:50
the real moins moins a écrit : moi j'attend avec impatience qu'un des auteurs d'idea écrive un bouquin la dessus |
eux ou quelqu'un d'autre, mais il faudrait des tutoriaux un peu plus sérieux.
et des articles qui approfondissent aussi, quand on voit le rapoort volume de documentation/volume de code du paquage javax.swing.text, c'est flippant, il y a une vraie architecture, fine et tout, et quasiment rien comme doc.
Marsh Posté le 29-01-2004 à 23:29:01
alors les biliothèques graphiques. ce n'est pas la première fois qu'un programmeur Java (ou un utilisateur) se plaint du manque de réactivité d'un GUI. J'ai jamais vu ça avec un autre environnement
Marsh Posté le 29-01-2004 à 23:30:49
taz a écrit : alors les biliothèques graphiques. ce n'est pas la première fois qu'un programmeur Java (ou un utilisateur) se plaint du manque de réactivité d'un GUI. J'ai jamais vu ça avec un autre environnement |
je pense que ce que -- veut dire c'est que compiler en natif ne va strictement rien y changer. Avant tout il s'agit de maitriser le code et d'utiliser les bonnes pratiques
et pour le débat du languauge, un programmeur peut faire de la merde aussi bien en Java que dans n'importe quel autre language. Tout est une question de maitrise
Marsh Posté le 29-01-2004 à 23:31:03
taz a écrit : alors les biliothèques graphiques. ce n'est pas la première fois qu'un programmeur Java (ou un utilisateur) se plaint du manque de réactivité d'un GUI. J'ai jamais vu ça avec un autre environnement |
Parce que la plupart ne savent pas les utiliser, quand on voit les tutoriaux et le code qui se trimbale dans la nature, c'est flippant.
Marsh Posté le 29-01-2004 à 23:33:25
l'invité mystère a écrit : le problème n'est-il pas Java |
Mais qui ca peut bien être ???
Marsh Posté le 29-01-2004 à 23:34:21
nraynaud a écrit : eux ou quelqu'un d'autre, mais il faudrait des tutoriaux un peu plus sérieux. |
j'ai parlé d'eux parce que leur produit m'impressionne tous les jours et que j'en connais pas d'autre de ce niveau. si tu en connais ça m'interesse
Marsh Posté le 29-01-2004 à 23:38:43
nraynaud a écrit : Parce que la plupart ne savent pas les utiliser, quand on voit les tutoriaux et le code qui se trimbale dans la nature, c'est flippant. |
pourtant je ne pense pas que les programmeurs Java soit plus mauvais les autres. et les autres langages interprétés (mais non compilés) ne pêchent pas de ce côté là.
Marsh Posté le 29-01-2004 à 23:54:52
taz a écrit : et les autres langages interprétés (mais non compilés) ne pêchent pas de ce côté là. |
bah oui, mais java sapu, ça rame et en plus c'est pas libre.
Marsh Posté le 29-01-2004 à 23:59:52
nraynaud a écrit : bah oui, mais java sapu, ça rame et en plus c'est pas libre. |
copain
non, je veux dire, la compilation en natif n'apporte rien de ce point de vue là? parce que je crois que vous prenez le problème dans le mauvais sens : en C, quand mon programme est lent, je commence à la compiler en O3 pour voir. et si ça ne suffit pas (mais ça arrive que cela suffise), là je profile et je réfléchis.
Marsh Posté le 30-01-2004 à 00:13:17
taz a écrit : copain |
Bah, oui, mais il existe un groupe de gens qui prétends réfléchir avant de taper, pendant qu'elle tape, voire même pendant que ça tourne (j'ignore volontairement les temps de compils car en général on en a pas en java, ça compile pendant la frappe) mais surtout dans ses chiottes pendant qu'elle chie. Ce qui lui permet de penser à la complexité, aux différentes stratégies à utiliser si un point rame (y penser par avance pour pas être trop pris au dépourvu par le profiler).
Autre chose : les optimisations à la con que peut faire un compilo (inlining, évaluation partielle, CSE etc.), on s'en fout, la VM les fait toute seule. On peut régler le GC si on a un profil d'application particulier, régler certains seuils, mais c'est assez rare d'en avoir besoin.
Mais le but c'est d'avoir ces conneries en automatique et d'utiliser son cerveau pour son programme.
Marsh Posté le 30-01-2004 à 00:24:39
mais j'ai jamais dit le contraire en ce qui concerne la réflexion en amoun. pour le reste, c'est bon t'as gagné. dès qu'on touche à la sacro sainte VM magique ...
Marsh Posté le 30-01-2004 à 00:25:23
taz a écrit : mais j'ai jamais dit le contraire en ce qui concerne la réflexion en amoun. pour le reste, c'est bon t'as gagné. dès qu'on touche à la sacro sainte VM magique ... |
ou dès qu'il est démontré que tu n'as pas d'arguments?
Marsh Posté le 30-01-2004 à 00:26:48
ben j'ai déjà dit ce que je pensais : qu'il n'est pas interdit de rechercher des solutions de compilations et d'exécutions
Marsh Posté le 30-01-2004 à 00:29:00
taz a écrit : mais j'ai jamais dit le contraire en ce qui concerne la réflexion en amoun. pour le reste, c'est bon t'as gagné. dès qu'on touche à la sacro sainte VM magique ... |
C'est toujours pareil : ils ont fait le choix de la VM, ils sont obligé d'y vendre leur slip, c'est exactement comme la compilation native, le compilo devient Dieu et tout dépend de lui.
Comme ils ont fait le choix de la souplesse et modularité par la réflexion, ils ont plus le droit de traffiquer à la compilation en plus. Compilation naïve, interpretation bourrine. exactement l'inverse d'une compilation native : compilation super-bourrine (car c'est spéculatif en plus) interprétation super-naïve.
Marsh Posté le 30-01-2004 à 00:31:09
c'est pas parce que vous n'arrivez pas à vous servir de gcj qu'il faut lui dire de laisser tomber
Marsh Posté le 30-01-2004 à 07:48:20
taz a écrit : alors les biliothèques graphiques. ce n'est pas la première fois qu'un programmeur Java (ou un utilisateur) se plaint du manque de réactivité d'un GUI. J'ai jamais vu ça avec un autre environnement |
Par ce que pour les autres environnement, cela reviendrais à reconnaitre implicitement que l'on est mauvais, et donc on n'ose pas faire la remarque et on se tait.
Marsh Posté le 30-01-2004 à 07:49:13
taz a écrit : je commence à la compiler en O3 pour voir. et si ça ne suffit pas (mais ça arrive que cela suffise), là je profile et je réfléchis. |
Bonjour, je m'appelle taz et je programme à l'envers
Marsh Posté le 30-01-2004 à 10:29:48
taz a écrit : ben j'ai déjà dit ce que je pensais : qu'il n'est pas interdit de rechercher des solutions de compilations et d'exécutions |
Par exemple en utilisant un profiler pour voir ou passe le temps d'execution...
Me semble que NuMega fait ce genre de chose utile, mais faut raquer...
A+,
Marsh Posté le 30-01-2004 à 12:12:59
gilou a écrit : |
NuMega fait de très beaux trucs (on se souvient de SoftIce ), mais ils sont chers, c'est clair
Marsh Posté le 30-01-2004 à 13:02:40
gilou a écrit : |
merci l'ami de ton soutien
Marsh Posté le 30-01-2004 à 13:09:42
DarkLord a écrit : |
ben je veux pas faire mon lanceur d'huile sur feu, mais visiblement pour avoir une application swing qui ne deviennent pas rapidement lourde, il faut vraiment une foutue maitrise. La preuve, vous vous extasiez tous sur IDEA qui reussi ce tour de force. Y'a pas un pb qqpart quand ce qui devrait etre la norme devient l'exception ?
Marsh Posté le 30-01-2004 à 13:34:24
chrisbk a écrit : ben je veux pas faire mon lanceur d'huile sur feu, mais visiblement pour avoir une application swing qui ne deviennent pas rapidement lourde, il faut vraiment une foutue maitrise. La preuve, vous vous extasiez tous sur IDEA qui reussi ce tour de force. Y'a pas un pb qqpart quand ce qui devrait etre la norme devient l'exception ? |
Si, comme j'ai déjà dit, je pense que c'est un problème avec les docs de swing.
Marsh Posté le 30-01-2004 à 13:51:11
chrisbk a écrit : |
voir reponse de nraynaud
je passe pas assez de temps dans swing pour en parler
(j'ai fait une seule appli l'an passé en 2/3 mois, c'est à peu pres tout donc bon...)
Marsh Posté le 30-01-2004 à 14:55:48
Nan mais y a aucun doute sur le fait que les applis graphiques Java sont généralement très lourdes, très lentes et très peu réactives ...
Et c'est clairement un problème majeur de Java ! Si ca n'avait pas été le cas, java aurait certainement intégré de façon bcp plus important le monde du desktop sur lequel il s'est pris une méchante claque adns la gueule, il faut bien l'avouer.
Marsh Posté le 30-01-2004 à 14:59:47
taz a écrit : merci |
T'as pas à me remercier. C'est certainement pas pour te faire plaisir que je dis ca. C'est une vérité, c'est tout.
Et je continue à penser que compiler du Java en natif est généralement une très mauvaise idée.
Marsh Posté le 30-01-2004 à 19:50:43
benou, essaie idea stp. par curiosité.
je ne nie pas le "problème" de swing, mais à mon avis nraynaud est plutot dans le vrai.
Marsh Posté le 30-01-2004 à 20:13:27
the real moins moins a écrit : benou, essaie idea stp. par curiosité. |
il est certainement dans le vrai, mais il n'en reste pas moins vrai que devoir avec bac+12 en swing pour faire une appli graphique qui ne rame pas, c'est pas normal ...
clairement, java et les autres langage natif (vb, delphi et autres trucs du genre) ne jouent pas dan la même catégorie. Je susi le premier à le regrêter ...
Marsh Posté le 30-01-2004 à 20:14:22
et si on retire IDEA, as tu un seul autre exemple d'appli graphique java un peu grosse qui ne soit pas une usina à gaz ?
Marsh Posté le 30-01-2004 à 20:26:10
benou a écrit : et si on retire IDEA, as tu un seul autre exemple d'appli java un peu grosse qui ne soit pas une usina à gaz ? |
Marsh Posté le 29-01-2004 à 15:54:14
Bonjour, Je voudrais savoir si vous avez deja réussi a comppiler en natif ss win...
Moi j'utilise GCJ avec la commande : gcj --main=GUI -o GUI GUI.java
Je crois savoir que qq nux c possible aussi grace a gcc-cpp
Merci