question de rapidité [java] - Java - Programmation
Marsh Posté le 06-06-2002 à 22:38:54
je dirais le case, qui de toute façon sera traduit par des if mais qui sera traduit de manière peut-être plus optimisée qu'une série de if "manuels"
enfin bon ça c'est vrai pour les languages compilés, mais j'imagine que c'est pareil ici
Marsh Posté le 07-06-2002 à 00:00:05
C'est vraiment du détail ! En Java, c'est pas les performance qu'on vise, alors franchement, savoir quel bytecode est le plus optimisé entre un switch et des if ...
mais si ca te dit, compare : fait une boucle de 100000 de if pui sune boucle de 100000 switchs avec un nombre aléatoire et tu verras bien ...
Marsh Posté le 07-06-2002 à 00:44:33
benou a écrit a écrit : C'est vraiment du détail ! En Java, c'est pas les performance qu'on vise, alors franchement, savoir quel bytecode est le plus optimisé entre un switch et des if ... mais si ca te dit, compare : fait une boucle de 100000 de if pui sune boucle de 100000 switchs avec un nombre aléatoire et tu verras bien ... |
à propos, vous savez c quoi la manière la plus rapide d'inverser un booleen en java?
Marsh Posté le 07-06-2002 à 00:46:22
greg@freestarthu a écrit a écrit : à propos, vous savez c quoi la manière la plus rapide d'inverser un booleen en java? |
bool = !bool;
Marsh Posté le 07-06-2002 à 00:48:13
benou a écrit a écrit : C'est vraiment du détail ! En Java, c'est pas les performance qu'on vise, alors franchement, savoir quel bytecode est le plus optimisé entre un switch et des if ... mais si ca te dit, compare : fait une boucle de 100000 de if pui sune boucle de 100000 switchs avec un nombre aléatoire et tu verras bien ... |
"Sans utiliser de composants graphiques, le java est plus rapide que le C++" dixit mon prof de Java.
Marsh Posté le 07-06-2002 à 00:49:38
_john_doe_ a écrit a écrit : "Sans utiliser de composants graphiques, le java est plus rapide que le C++" dixit mon prof de Java. |
et la marmotte ....
Marsh Posté le 07-06-2002 à 00:51:05
mareek a écrit a écrit : bool = !bool; |
non
Marsh Posté le 07-06-2002 à 00:53:13
Ah, et aussi :
"On a mesuré que le temps de développement d'un programme en Java et le même programme en C++ varie d'un facteur 10 (en faveur du prg Java), et ce grâce à la présence du garbage collector. En C++ on passe la plupart du temps à résoudre des problèmes de pointeurs null etc, alors qu'en java tout est transparent."
Toujours selon ce même prof.
Marsh Posté le 07-06-2002 à 00:54:42
_john_doe_ a écrit a écrit : Ah, et aussi : "On a mesuré que le temps de développement d'un programme en Java et le même programme en C++ varie d'un facteur 10 (en faveur du prg Java), et ce grâce à la présence du garbage collector. En C++ on passe la plupart du temps à résoudre des problèmes de pointeurs null etc, alors qu'en java tout est transparent." Toujours selon ce même prof. |
OK, c'est confirmé, il est commercial chez sun
Marsh Posté le 07-06-2002 à 00:55:21
mareek a écrit a écrit : bool+=bool; ? |
non
(ça compile ça?)
Marsh Posté le 07-06-2002 à 00:55:51
_john_doe_ a écrit a écrit : Ah, et aussi : "On a mesuré que le temps de développement d'un programme en Java et le même programme en C++ varie d'un facteur 10 (en faveur du prg Java), et ce grâce à la présence du garbage collector. En C++ on passe la plupart du temps à résoudre des problèmes de pointeurs null etc, alors qu'en java tout est transparent." Toujours selon ce même prof. |
Faut dire que dans l'info on trouve pas mal de développeurs en C++ qui ont une idée assez floue de ce qu'est un pointeur ...
Marsh Posté le 07-06-2002 à 00:55:58
greg@freestarthu a écrit a écrit : non |
if (bool == true) {
bool = false;
}
else {
bool = true;
}
Marsh Posté le 07-06-2002 à 00:56:56
_john_doe_ a écrit a écrit : if (bool == true) { bool = false; } else { bool = true; } |
ooh non
Marsh Posté le 07-06-2002 à 00:58:43
mareek a écrit a écrit : OK, c'est confirmé, il est commercial chez sun |
C'est vrai qu'il a l'air trop amoureux du Java, et je le soupçonne même d'acheter des bouquins de C++ pour alimenter sa cheminée. Enfin il reste assez convaincant quand même, et puis quand tu l'entends parler tu te dis que le java c'est vraiment le langage ultime : tout est prévu, tout est d'une logique béton et la vie est belle avec les zoiseaux qui chantent.
Marsh Posté le 07-06-2002 à 00:59:11
greg@freestarthu a écrit a écrit : ooh non |
Sanndaiconnay ?
Marsh Posté le 07-06-2002 à 01:00:27
greg@freestarthu a écrit a écrit : non (ça compile ça?) |
je sais pas, j'essaye des conneries
Marsh Posté le 07-06-2002 à 01:04:06
mareek a écrit a écrit : je sais pas, j'essaye des conneries |
langochat?
Marsh Posté le 07-06-2002 à 01:09:02
greg@freestarthu a écrit a écrit : langochat? |
oui, c'est surement un truc avec des opérations mathématiques hyper compliquées qui te fait gagner 1% de rapidité
Marsh Posté le 07-06-2002 à 01:11:32
mareek a écrit a écrit : oui, c'est surement un truc avec des opérations mathématiques hyper compliquées qui te fait gagner 1% de rapidité |
bool ^= true;
http://www.smotricz.com/kabutz/Issue042.html
edit: et sa peut etre 2x plus rapide qu'un bool = !bool
mais bon, c sur qu'on s'en tape un peu dans 99.9999999999% des cas
c juste pour le sport quoi ou bien c un bon truc d'obfuscation
Marsh Posté le 07-06-2002 à 01:13:23
greg@freestarthu a écrit a écrit : bool ^= true; http://www.smotricz.com/kabutz/Issue042.html |
OK, le ^ c'est donc un NAND
Marsh Posté le 07-06-2002 à 01:14:39
mareek a écrit a écrit : OK, le ^ c'est donc un NAND |
euh XOR non? enfin c ce que je lis sur le lien que j'ai passé
Marsh Posté le 07-06-2002 à 01:20:27
greg@freestarthu a écrit a écrit : euh XOR non? enfin c ce que je lis sur le lien que j'ai passé |
bon je suis à la rue, dodo
Marsh Posté le 07-06-2002 à 02:38:06
moi j'irais pas jusqu'à dire 10 fois plus rapide
mais facile 4,5 plus rapide de développé en java....
_john_doe_ a écrit a écrit : Ah, et aussi : "On a mesuré que le temps de développement d'un programme en Java et le même programme en C++ varie d'un facteur 10 (en faveur du prg Java), et ce grâce à la présence du garbage collector. En C++ on passe la plupart du temps à résoudre des problèmes de pointeurs null etc, alors qu'en java tout est transparent." Toujours selon ce même prof. |
Marsh Posté le 07-06-2002 à 02:40:16
os2 a écrit a écrit : moi j'irais pas jusqu'à dire 10 fois plus rapide mais facile 4,5 plus rapide de développé en java.... |
non, non plutot 5,3
c'etait un post super interessant, en tous cas, merci
Marsh Posté le 07-06-2002 à 08:55:48
_john_doe_ a écrit a écrit : "Sans utiliser de composants graphiques, le java est plus rapide que le C++" dixit mon prof de Java. |
Marsh Posté le 07-06-2002 à 10:46:32
mareek a écrit a écrit : OK, le ^ c'est donc un NAND |
non non c'est un XOR
Marsh Posté le 07-06-2002 à 12:18:36
greg@freestarthu a écrit a écrit : non, non plutot 5,3 c'etait un post super interessant, en tous cas, merci |
En fait, j'crois que t'as pas bien compris...
Quand il dit 4,5 fois plus rapide, il veut pas dire que c 4.5 fois plus rapide, mais 4 OU 5 fois plus rapide... en gros quoi !
Marsh Posté le 07-06-2002 à 12:21:32
el_gringo a écrit a écrit : En fait, j'crois que t'as pas bien compris... Quand il dit 4,5 fois plus rapide, il veut pas dire que c 4.5 fois plus rapide, mais 4 OU 5 fois plus rapide... en gros quoi ! |
NOOOOOOOOOOOOOOOOON?
Marsh Posté le 07-06-2002 à 14:39:28
_john_doe_ a écrit a écrit : "Sans utiliser de composants graphiques, le java est plus rapide que le C++" dixit mon prof de Java. |
a develloppé oui
a executer ,non .
ke java libere seul la memoire non utilisée ( garbage collector ) mais e process coute des resources ,de la memorie ( stocker des tables de variable referencés )...
tout cafait que le java est , et sera touours plus lent que le C++ ( a condition de comparer deux codes fait par des pros de chaque langage )
Marsh Posté le 07-06-2002 à 14:47:56
flo850 a écrit a écrit : a develloppé oui a executer ,non . ke java libere seul la memoire non utilisée ( garbage collector ) mais e process coute des resources ,de la memorie ( stocker des tables de variable referencés )... tout cafait que le java est , et sera touours plus lent que le C++ ( a condition de comparer deux codes fait par des pros de chaque langage ) |
sans oublier que Java est interpreté et C++ compilé
Marsh Posté le 07-06-2002 à 15:01:11
dsauf que quand tu fais un prog java avec gui il marche sous win sous nux et ... alors que ce tapper un prog c ou c++ pour tous les os c'est lourd
et niveaux ram qui qu'a pas 256mo ici?
et le c++ c'est sale
Marsh Posté le 07-06-2002 à 15:08:24
kakou a écrit a écrit : dsauf que quand tu fais un prog java avec gui il marche sous win sous nux et ... alors que ce tapper un prog c ou c++ pour tous les os c'est lourd et niveaux ram qui qu'a pas 256mo ici? et le c++ c'est sale |
on parle juste vitesse d'execution donc ta remarque n'a rien a voir avec la discussion, même si elle est juste.
enfin l'argument "et le c++ c'est sale" n'a aucune valeur puisqu'on peut faire du code sale dans n'importe quel langage (et inversement pour du code propre)
Marsh Posté le 07-06-2002 à 15:12:54
enfin niveaux pointeur en c++ ca rend un code illisible alors quand java si tu fais la javadoc deja c'est plus lisible
Marsh Posté le 07-06-2002 à 15:15:56
kakou a écrit a écrit : enfin niveaux pointeur en c++ ca rend un code illisible alors quand java si tu fais la javadoc deja c'est plus lisible |
...toujours autant à coté de la plaque (la "plaque" étant ici le sujet de la discution !)
Marsh Posté le 07-06-2002 à 15:17:38
au dessus on parle de rapidité de developpement non?
dojnc ca va plus vite a developper sous java pour ++ os qu'en c++ voila
Marsh Posté le 06-06-2002 à 22:30:37
Bonjour,
je voulais juste savoir ce qui est le plus rapide entre une série de if ... else if... else if ... et l'instruction switch case ... case ... case ...
En effet j'ai trouvé des informations contradictoires sur le net ...