[java] il se fou du monde le jbuilder !!!!

il se fou du monde le jbuilder !!!! [java] - Java - Programmation

Marsh Posté le 30-10-2002 à 15:02:08    

salut , je viens de tester la fonction du jbuilder 7 qui fait des exécutables natifs pour chaque os , et en fait quelle ne fut pas ma surprise de voir que ce ne sont que des .jar renommés en .exe ...
 
y a d'autre solution pour faire de vrai exe ?

Reply

Marsh Posté le 30-10-2002 à 15:02:08   

Reply

Marsh Posté le 30-10-2002 à 15:15:08    

[:rofl]  [:rofl]  [:rofl]  
 
jbuilder powa sa race  [:xp1700]


---------------
Just because you feel good does not make you right
Reply

Marsh Posté le 30-10-2002 à 15:33:34    

drakkeng a écrit a écrit :

salut , je viens de tester la fonction du jbuilder 7 qui fait des exécutables natifs pour chaque os , et en fait quelle ne fut pas ma surprise de voir que ce ne sont que des .jar renommés en .exe ...
 
y a d'autre solution pour faire de vrai exe ?
 




 
utiliser un vrai langage natif ... VB.Net ?  :D  :hello:  :D

Reply

Marsh Posté le 30-10-2002 à 15:35:22    

Taureau a écrit a écrit :

 
 
utiliser un vrai langage natif ... VB.Net ?  :D  :hello:  :D  




 
 :o


---------------
Just because you feel good does not make you right
Reply

Marsh Posté le 30-10-2002 à 15:43:21    

DarkLord a écrit a écrit :

 [:rofl]  [:rofl]  [:rofl]  
 
jbuilder powa sa race  [:xp1700]  




 
grrrrrrrrrrr :fou:

Reply

Marsh Posté le 30-10-2002 à 15:43:57    

drakkeng a écrit a écrit :

 
 
grrrrrrrrrrr :fou:




 
c'est encore une idée à la con de vouloir faire des exécutables natifs de toutes façons :o
y a qu'un utilisateur de JBuilder pour avoir des idées pareilles :D


Message édité par darklord le 30-10-2002 à 15:44:18

---------------
Just because you feel good does not make you right
Reply

Marsh Posté le 30-10-2002 à 15:45:22    

DarkLord a écrit a écrit :

 
 
c'est encore une idée à la con de vouloir faire des exécutables natifs de toutes façons :o
y a qu'un utilisateur de JBuilder pour avoir des idées pareilles :D




 
j'utilise tout moi meme IntelliJ idea , je voulais proteger mes class de la decompilation ,et accessoirement accélérer l'exécution.

Reply

Marsh Posté le 30-10-2002 à 15:48:12    

http://www.excelsior-usa.com/jet.html
 
mais cela utilise toujours la JVM

Reply

Marsh Posté le 30-10-2002 à 15:49:05    

Taureau a écrit a écrit :

http://www.excelsior-usa.com/jet.html
 
mais cela utilise toujours la JVM




 
oui je suis en train de l'installer ça fait 3 heures qu'il compile je sais pas quoi :D


Message édité par drakkeng le 30-10-2002 à 15:49:40
Reply

Marsh Posté le 30-10-2002 à 15:51:20    

comme pourrait dire darklord : "il optimise ton code pas bo fait par jbuilder"  
 
 :D

Reply

Marsh Posté le 30-10-2002 à 15:51:20   

Reply

Marsh Posté le 30-10-2002 à 15:53:03    

Taureau a écrit a écrit :

comme pourrait dire darklord : "il optimise ton code pas bo fait par jbuilder"  
 
 :D  




 
il est bo mon code car je fais des projets vide avec le jbuilder j'utilise pas ses fonctions de génération de code , je me sert juste de l'edieur .

Reply

Marsh Posté le 30-10-2002 à 15:53:33    

Taureau a écrit a écrit :

comme pourrait dire darklord : "il optimise ton code pas bo fait par jbuilder"  
 
 :D  




 
 [:titprem]  [:titprem]  [:titprem]


---------------
Just because you feel good does not make you right
Reply

Marsh Posté le 30-10-2002 à 15:54:21    

drakkeng a écrit a écrit :

 
 
j'utilise tout moi meme IntelliJ idea , je voulais proteger mes class de la decompilation ,et accessoirement accélérer l'exécution.
 




Pour empêcher la décompilation, il y a le bytecode obfuscator, et pour accélérer l'exécution du bytecode, il y a des JVM plus efficaces, et un bon profileur (OptimizeIt est assez bien fichu, par exemple).

Reply

Marsh Posté le 30-10-2002 à 15:58:59    

BifaceMcLeOD a écrit a écrit :

 
Pour empêcher la décompilation, il y a le bytecode obfuscator, et pour accélérer l'exécution du bytecode, il y a des JVM plus efficaces, et un bon profileur (OptimizeIt est assez bien fichu, par exemple).




 
C quoi un profileur ?
Quand on obfuscate le byte code par contre, quand une exception se produit, j'imagine que c plus dur de la localiser (la n° de ligne, et les classes/méthodes de la pile sont inninterprétable. Non ?
Pourquoi certaines JVM son plus rapides que celles du JRE, la plus distribuée ? pourquoi plusieurs machines virtuelles ?

Reply

Marsh Posté le 30-10-2002 à 15:59:09    

drakkeng a écrit a écrit :

 
 
j'utilise tout moi meme IntelliJ idea , je voulais proteger mes class de la decompilation ,et accessoirement accélérer l'exécution.
 




 
 
http://proguard.sourceforge.net/
 
 
 
 :hello:

Reply

Marsh Posté le 30-10-2002 à 15:59:22    

BifaceMcLeOD a écrit a écrit :

 




 
Au bureau, on me fait coder. je fait du code completement imbitable, on m'appelle l'obfuscateur.


---------------
brisez les rêves des gens, il en restera toujours quelque chose...  -- laissez moi troller sur discu !
Reply

Marsh Posté le 30-10-2002 à 15:59:46    

BifaceMcLeOD a écrit a écrit :

 
Pour empêcher la décompilation, il y a le bytecode obfuscator, et pour accélérer l'exécution du bytecode, il y a des JVM plus efficaces, et un bon profileur (OptimizeIt est assez bien fichu, par exemple).




 
ok merci je vais voir , ça .

Reply

Marsh Posté le 30-10-2002 à 16:01:25    

drakkeng a écrit a écrit :

salut , je viens de tester la fonction du jbuilder 7 qui fait des exécutables natifs pour chaque os , et en fait quelle ne fut pas ma surprise de voir que ce ne sont que des .jar renommés en .exe ...
 
y a d'autre solution pour faire de vrai exe ?
 




 
 
.Jar renommé en .exe ???? t sur la ?... paske ca me parait pas executable du tout, vu que .jar=.zip renommé....
 
 


---------------
Eos 20d(kit) + 70-200 F4L + 50 F1.4 + 420 EX Powered®
Reply

Marsh Posté le 30-10-2002 à 16:03:35    

kadreg a écrit a écrit :

 
 
Au bureau, on me fait coder. je fait du code completement imbitable, on m'appelle l'obfuscateur.




 
chez nous c'est le chef de projet qui remplit cette fonction, on code puis il passe derrière pour obfuscater notre code [:ddr555]


Message édité par drasche le 30-10-2002 à 16:04:04

---------------
Whichever format the fan may want to listen is fine with us – vinyl, wax cylinders, shellac, 8-track, iPod, cloud storage, cranial implants – just as long as it’s loud and rockin' (Billy Gibbons, ZZ Top)
Reply

Marsh Posté le 30-10-2002 à 16:08:30    

Meliok a écrit a écrit :

 
 
 
.Jar renommé en .exe ???? t sur la ?... paske ca me parait pas executable du tout, vu que .jar=.zip renommé....
 
 
 




 
ben oui car j'arrive a l'ouvrir avec winrar , et je vois mes class dedans.

Reply

Marsh Posté le 30-10-2002 à 16:13:52    

drakkeng a écrit a écrit :

 
 
ben oui car j'arrive a l'ouvrir avec winrar , et je vois mes class dedans.
 




 
[:ddr555]  :lol:  :lol:  
 
 [:xp1700]


---------------
Just because you feel good does not make you right
Reply

Marsh Posté le 30-10-2002 à 16:30:57    

DarkLord a écrit a écrit :

 
 
[:ddr555]  :lol:  :lol:  
 
 [:xp1700]  




 
va manger des frites toi :D

Reply

Marsh Posté le 30-10-2002 à 16:45:12    

drakkeng a écrit a écrit :

 
 
va manger des frites toi :D
 




 
t'as compris pq je me marres au moins ? :D


---------------
Just because you feel good does not make you right
Reply

Marsh Posté le 30-10-2002 à 16:46:21    

Meliok a écrit a écrit :

.Jar renommé en .exe ???? t sur la ?... paske ca me parait pas executable du tout, vu que .jar=.zip renommé....




+1

Reply

Marsh Posté le 30-10-2002 à 16:47:24    

DarkLord a écrit a écrit :

 
 
t'as compris pq je me marres au moins ? :D




benou i ?

Reply

Marsh Posté le 30-10-2002 à 16:50:10    

DarkLord a écrit a écrit :

 
 
t'as compris pq je me marres au moins ? :D




 
non , peut etre parce que tu trouves l'expression "ben oui" ridicule car ça fait nordiste ?

Reply

Marsh Posté le 30-10-2002 à 16:53:50    

drakkeng a écrit a écrit :

 
non , peut etre parce que tu trouves l'expression "ben oui" ridicule car ça fait nordiste ?




ben non, c'est pas nordiste, ca, on l'utilise partout...

Reply

Marsh Posté le 30-10-2002 à 17:02:23    

lorill a écrit a écrit :

 
ben non, c'est pas nordiste, ca, on l'utilise partout...




 
ça tombe bien car j'habite dans le sud :lol:
je voulais brouiller les pistes.

Reply

Marsh Posté le 30-10-2002 à 17:04:47    

drakkeng a écrit a écrit :

 
 
non , peut etre parce que tu trouves l'expression "ben oui" ridicule car ça fait nordiste ?
 




 

Citation :


.Jar renommé en .exe ???? t sur la ?... paske ca me parait pas executable du tout, vu que .jar=.zip renommé....  


 

Citation :


ben oui car j'arrive a l'ouvrir avec winrar , et je vois mes class dedans.  


---------------
Just because you feel good does not make you right
Reply

Marsh Posté le 30-10-2002 à 17:05:56    

DarkLord a écrit a écrit :

 
 

Citation :


.Jar renommé en .exe ???? t sur la ?... paske ca me parait pas executable du tout, vu que .jar=.zip renommé....  


 

Citation :


ben oui car j'arrive a l'ouvrir avec winrar , et je vois mes class dedans.  






 
a ok c'est ridicule car c 'est normal d'ouvrir un zip en winrar :lol:

Reply

Marsh Posté le 30-10-2002 à 17:33:21    

El_Gringo a écrit a écrit :

 
 
C quoi un profileur ?
Quand on obfuscate le byte code par contre, quand une exception se produit, j'imagine que c plus dur de la localiser (la n° de ligne, et les classes/méthodes de la pile sont inninterprétable. Non ?
Pourquoi certaines JVM son plus rapides que celles du JRE, la plus distribuée ? pourquoi plusieurs machines virtuelles ?




Non, le bytecode obfuscator se contente de renommer tous les symboles (hormis les noms des classes publiques et leurs méthodes publiques ou protégées) en utilisant un générateur de noms de symboles aléatoires. Les classes "obfusquées" restent décompilables, mais le résultat de la décompilation est très difficile à comprendre pour un humain (ça reste cependant du code Java parfaitement recompilable).
Ceci dit, les piles d'exceptions restent parfaitement valides, et si tu disposes du code source non "obfusqué", tu pourras t'y retrouver.
 
Maintenant, au sujet des JVM : il en existe plusieurs, y compris au sein du J2SDK de Sun : historiquement, il y avait le simple interpréteur de bytecode, puis est apparu le compilateur Just-in-Time Symantec, distribué avec le JDK1.1. Sun a ensuite développé la machine virtuelle HotSpot, fournie avec le JRE depuis la version 1.2, et aujourd'hui diffusée sous le nom de "HotSpot Client" ; elle est déjà nettement plus rapide que le JIT Symantec. Plus récemment est apparue la JVM HotSpot Server,  qui est encore beaucoup plus rapide qu'HotSpot Client. Mais elle n'est distribuée avec aucun JRE (téléchargement séparé), et elle n'est distribuée avec le JDK que depuis la version 1.4.
Point de vue rapidité d'exécution, HotSpot Server donne des résultats vraiment étonnants, et on arrive à obtenir des programmes Java à peine plus lents que les programmes C++ équivalents (1 à 3-4 fois), au lieu de programmes 50 fois plus lents avec l'interpréteur de bytecode historique.
 
Maintenant, d'autres sociétés ou organismes ont préféré développer leur propre JVM plutôt que d'utiliser celle fournie par Sun, typiquement IBM, qui fournit sa propre JVM avec WebSphere, par exemple.

Reply

Marsh Posté le 30-10-2002 à 17:40:08    

BifaceMcLeOD a écrit a écrit :

 
Non, le bytecode obfuscator se contente de renommer tous les symboles (hormis les noms des classes publiques et leurs méthodes publiques ou protégées) en utilisant un générateur de noms de symboles aléatoires. Les classes "obfusquées" restent décompilables, mais le résultat de la décompilation est très difficile à comprendre pour un humain (ça reste cependant du code Java parfaitement recompilable).
Ceci dit, les piles d'exceptions restent parfaitement valides, et si tu disposes du code source non "obfusqué", tu pourras t'y retrouver.
 
Maintenant, au sujet des JVM : il en existe plusieurs, y compris au sein du J2SDK de Sun : historiquement, il y avait le simple interpréteur de bytecode, puis est apparu le compilateur Just-in-Time Symantec, distribué avec le JDK1.1. Sun a ensuite développé la machine virtuelle HotSpot, fournie avec le JRE depuis la version 1.2, et aujourd'hui diffusée sous le nom de "HotSpot Client" ; elle est déjà nettement plus rapide que le JIT Symantec. Plus récemment est apparue la JVM HotSpot Server,  qui est encore beaucoup plus rapide qu'HotSpot Client. Mais elle n'est distribuée avec aucun JRE (téléchargement séparé), et elle n'est distribuée avec le JDK que depuis la version 1.4.
Point de vue rapidité d'exécution, HotSpot Server donne des résultats vraiment étonnants, et on arrive à obtenir des programmes Java à peine plus lents que les programmes C++ équivalents (1 à 3-4 fois), au lieu de programmes 50 fois plus lents avec l'interpréteur de bytecode historique.
 
Maintenant, d'autres sociétés ou organismes ont préféré développer leur propre JVM plutôt que d'utiliser celle fournie par Sun, typiquement IBM, qui fournit sa propre JVM avec WebSphere, par exemple.
 




 
Ms avec un code obfuscaté, dans la stack d'une exception, les nom de méthodes et de classes seront pas les originaux !
Et un profiler c quoi alors ?

Reply

Marsh Posté le 30-10-2002 à 17:46:17    

El_Gringo a écrit a écrit :

 
Et un profiler c quoi alors ?




c'est un truc qui te permet de reperer ou ton programme perd son temps, histoire de savoir ou optimiser.

Reply

Marsh Posté le 30-10-2002 à 17:50:09    

Si les méthodes sont publiques ou protégées et qu'elles appartienent à une classe publique, si. Sinon, effectivement, elles seront obfusquées. Mais rien ne t'empêche de laisser les numéros de lignes comme seules informations de débogage. Ce qui fait que si tu reçois une pile de la part d'un utilisateur et que tu disposes du source non obfusqué, tu pourras parfaitement interpréter la pile et retrouver chacun des appels dans ton source.
 
Un profileur, c'est un outil qui va mesurer avec précision le temps passé dans chaque ligne de ton source, et le nombre de fois que chacune des lignes de ton source est exécuté.
Cela permet de savoir très précisément quels sont les bouts de ton code qui sont les plus coûteux et/ou les plus souvent sollicités.
C'est donc ces bouts de code-là qu'il faut optimiser en priorité pour accélérer la vitesse globale du programme (ne jamais oublier de vérifier au profileur que l'optimisation effectuée est vraiment efficace...).
Et si une fonction est trop difficile à optimiser (par exemple, parce qu'elle est très courte), mais qu'elle est appelée un très grand nombre de fois, il faut alors essayer de diminuer le nombre d'appels à cette fonction, par exemple en utilisant un cache.
 
Enfin, en fonction du langage, il y a un certain nombre de trucs pour améliorer localement l'efficacité du code. Par exemple, en Java, utiliser java.util.StringBuffer au lieu de java.util.String pour la construction des chaines de caractères, essayer de réutiliser des objets déjà alloués plutôt que faire des "new", etc (ces 2 exemples typiques permettent en outre une consommation mémoire moins gourmande, donc une moindre sollicitation du ramasse-miettes).

Reply

Marsh Posté le 31-10-2002 à 11:11:22    

Ce topic débile a fini par devenir tres instructif :lol: :jap:  

Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed