<geek> les trucs du futur.

Vous pouvez y parler de tout
Répondre
Catox
Otaking !
Messages : 2783
Enregistré le : mer. 16 avr. 2003, 13:22
Localisation : Pertuis
Contact :

Message par Catox »

ben au lycée, on nous apprenais GotoXY et Writeln quoi... c'est sûr que la POO n'était pas (ou pas encore ?) un axe très "didactique"

mais à cette époque j'en avais plus qu'entendu parler et j'avais pu tester. Je trouvais ça sympa, les "variables qui font des choses avec des procédures inclues dans leur type", les héritages, tout ça ^^

sinon y a aucun rapport, mais on pouvait aussi jouer en assembleur avec turbo pascal... et ça non plus, on nous l'apprenais pas
Rrraaah, le 320x200x256 et les bidouillages dans la mémoire vidéo
c'était l'bon temps *__*
Kataouh tataouh

Avatar du membre
berseker
mouton câlin
Messages : 5985
Enregistré le : jeu. 27 nov. 2003, 11:05
Localisation : Paris mais presque
Contact :

Message par berseker »

Je viens mettre mon nez dans la discussion.
Klaim a écrit :Java est lent, ultra gourmand en mémoire, difficile à mettre en place de façon stable...
Je connais des spécialistes Java qui ont torturé des gens pour moins que ça. Actuellement, la différence de puissance entre Java et du C++ n'est plus visible que dans certains cas très particuliers. Du moins d'après eux, mais je leur fais confiance.
c.lambin a écrit :Enfin bon tout ça c'est bien joli mais de ce que je vois un peu à droite et à gauche, on parle standardisation partout mais n'empêche que les seuls programmes que je vois qui fonctionnent à la fois sur Windows, MacOS et Linux ce sont ceux qui sont programmés en Java. Donc niveau standardisation chez les autres langages, vous repasserez...
En ce moment, je bosse avec les librairies Qt en C++. Je n'ai pas essayé de faire marcher mes applications sous d'autres OS, mais on m'en a dit le plus grand bien.
Hervé Joncour posa sa cigarette sur le bord de la table avant de dire
-Et il est où, exactement, ce Japon?
Baldabiou leva sa canne de Jonc en l'air et la pointa par-delà les toits de Saint-Auguste.
-Par là, toujours tout droit.
Dit-il.
-Jusquà la fin du monde.

Avatar du membre
Klaim
Artisan Digital
Messages : 10635
Enregistré le : mar. 27 mai 2003, 13:13
Localisation : Paris
Contact :

Message par Klaim »

berseker a écrit :Je connais des spécialistes Java qui ont torturé des gens pour moins que ça. Actuellement, la différence de puissance entre Java et du C++ n'est plus visible que dans certains cas très particuliers. Du moins d'après eux, mais je leur fais confiance.
Je dirais que les différences sont toujours présentes mais effectivement relatives à l'utilisation.
Pour être clair :
- si tu veux faire une application client avec une interface : java est plus rapide/facile à programmer, même si ça necessite l'installation de la virtual machine java sur le pc de l'utilisateur mais ça c'est rien; comparé à java dans ce cas, le C++ c'est la galère assurée, au niveau programmation uniquement, parceque rien n'est prévu pour l'affichage, il faut utiliser des bibliothèques faites par d'autres (genre QT, MFC (beurk) ou wxWidgets)
- si tu veux faire un programme qui a une interface particulière et a besoin d'être le plus rapide possible (genre un jeu) alors C/C++ est absolument sans contestation le plus efficace;
- si tu veux faire un programme sans interface qui fait un truc rapide, pareil;
- si tu veux avoir une interface et que ça permette de faire des opérations rapides, le mieu c'est de combiner les deux.

Dans tous les cas, par nature, le Java est moins rapide, on ne peut pas le contester c'est JAVA même qui est comme ça (parcequ'il fait des tas de trucs que le programmeur C/C++ ne fait pas ou n'est pas obligé de faire).
En revanche le JAVA est plus rapide a programmer pour tout ce qui est interface; mais pas plus rapide tout court.
JAVA necessite moins de maitrise de la machine, ce qui induit les débutants en erreur quand aux limitations de cette machine (genre la mémoire) et fait dire aux expérimentés que c'est faut niveaux mémoire on peut faire un truc léger en java. C'est vrai, mais le language en lui même aide pas de façon intuitive à correctement gérer la mémoire.
En C/C++, t'as pas le choix, tu ne manipule que de la mémoire, même si ya une couche d'abstraction par dessus en C++.

Une note sur la portabilité : que ce soit en C++ ou en JAVA, même si JAVA a un slogant "write once, run everywhere", il est quasiment impossible de faire une application plus conséquente qu'un hello world en ligne de commande sans ajouter du code spécifique.
Même John Carmack, qui s'est tappé tout un tas de portages en java, le dit. J'en ai aussi fait l'expérience et bon en fait c'est un fait assez connu. Le problème c'est que malgrés les standards définis, les fournisseurs de hardware obligent les programmeurs à utiliser leurs codes spécifiques. Quand personne n'est d'accord...

Catox> http://fr.wikipedia.org/wiki/Programmat ... t#Origines

Je disais donc, le premier, SmallTalk, et le premier a rendre cette philosophie populaire, JAVA, sachant que le C++ était là masi sujet à l'inertie des mentalitées.

Avatar du membre
jem
CyberPet
Messages : 5037
Enregistré le : mar. 14 oct. 2003, 5:57
Localisation : les collines gersoises

Message par jem »

Klaim> Sans remettre en cause la supériorité du C++ par rapport à Java en terme de vitesse pure d'execution, je pense qu'il faut nuancer :

- La parfaite maitrise du C étant plus difficile que le Java, on aura beaucoup plus de chance qu'un développeur fasse des conneries dans un programme C qui réduira à zéro l'avantage supposé.
Alors bien sûr on peut s'en tenir à la posture élitiste comme quoi c'est un problème du développeur et non du langage et qu'on n'a qu'a améliorer les développeurs, mais je ne trouve pas ca très réaliste

- Les performance d'exécution c'est très bien pour la 3D, les jeux ou les simulations mathématique, mais pour les applications de gestion qui font le quotidien de beaucoup de développeurs la performance relative du Java ou du .NET (voire même de langages encore plus interprétés type VB6, Python, ...) sont largement suffisantes. Le critère principal devient alors la maintenabilité de l'application.

Enfin, sur la portabilité, j'ai fait chez France Telecom des applis (qui tournaient exclusivement en ligne de commande) assez conséquentes (avec notamment de la gestion XML/XSL, des requetes sur un système Documentum, des appels à des Web Services... dont le code tournait exactement de la même façon sur Windows et sur Solaris.
I found my freedom now.
Funny how it feels just like being alone...

Avatar du membre
Klaim
Artisan Digital
Messages : 10635
Enregistré le : mar. 27 mai 2003, 13:13
Localisation : Paris
Contact :

Message par Klaim »

Exactement Jem, tout a fait d'accord. :D

Je ne suis pas spécialement pro C/C++, c'est l'outil que j'utilise le plus (par nécessité) mais pour faire l'editeur de mon jeu par exemple, j'opte plutot pour C# qui pour moi est une meilleure alternative à JAVA.

Pour la portabilité de JAVA, je ne conteste pas qu'un même code puisse marcher sur deux machines différentes, le problème survient avec le nombre de types de machines. D'ailleurs je pense pas que le problème soit visible sur des appli serveur web(servlet + jsp etc) parceque généralement ya une couche supplémentaire qui gere les différences (en gros le code spécifique est déjà fait par d'autres).
En fait ça pose problème surtout pour les "application client" classiques et d'une manière générale sur tout ce qui est pas pc genre les téléphones portables...

La ou je bosse actuellement on utilise C/C++ sur les portables mais bon on a besoin de vitesse et aussi on se limite au niveau du choix des portables à gérer.

edit>
jem a écrit :Les performance d'exécution c'est très bien pour la 3D, les jeux ou les simulations mathématique
... et aussi tout ce qui est materiel industriel, embarqué etc ouaip.

Avatar du membre
Fikey
Otaking !
Messages : 4179
Enregistré le : lun. 23 juin 2003, 22:20
Localisation : mmmh chron....
Contact :

Message par Fikey »

alors çà....çà c'est la classe

le planeur de Nausicaa

Image
manque juste un réacteur et ce sera parfait

Avatar du membre
c.lambin
Hannibal posteur
Messages : 476
Enregistré le : mar. 14 févr. 2006, 2:07
Localisation : Plus haut... un peu plus à gauche... oui c'est là raaaahhh
Contact :

Message par c.lambin »

Fikey a écrit :alors çà....çà c'est la classe
manque juste un réacteur et ce sera parfait
Y'avait une vidéo de la version "maquette" qui date maintenant de plusieurs années.
Mais bon je serai pas satisfait tant que le pilote fera pas une cabriole pour aller s'accrocher aux roues :kgrin:
« Quand on est bien dedans, ça fait quand même plaisir » (Chron)
« Donc en fait Book-off, c'est comme Mandarake mais pour les gens normaux ? » (Anonyme)

Avatar du membre
c.lambin
Hannibal posteur
Messages : 476
Enregistré le : mar. 14 févr. 2006, 2:07
Localisation : Plus haut... un peu plus à gauche... oui c'est là raaaahhh
Contact :

Message par c.lambin »

jem a écrit :Klaim> Sans remettre en cause la supériorité du C++ par rapport à Java en terme de vitesse pure d'execution, je pense qu'il faut nuancer
En fait dès qu'on fouille un peu pour trouver des benchmarks, le Java réserve souvent de bonnes surprises.
Exemple : http://scutigena.sourceforge.net/
Bien sûr le test qui tue c'est "hello world" qui prend en compte le démarrage de la machine virtuelle (autrement dit une éternité).

J'avais vu un bench il y a 2-3 ans qui pointait un autre problème inhérent à la VM : les opérations en virgule flottante sont beaucoup plus lentes (d'un rapport genre 10x) sur CPU Intel et compatible. La faute à Intel qui ne calculerait pas ses arrondis de la même façon que sur les autres CPU : du coup pour avoir des résultats consistants sur cette plateforme, la VM effectue les calculs en software. Je ne sais pas si la situation s'est améliorée avec l'apparition du sse2/sse3.

Sinon globalement le Java se positionnne plus du côté du C++ que du côté de langages comme Perl, Ruby etc. Par contre la différence de vitesse est sensible dès qu'on recherche la performance.
« Quand on est bien dedans, ça fait quand même plaisir » (Chron)
« Donc en fait Book-off, c'est comme Mandarake mais pour les gens normaux ? » (Anonyme)

Avatar du membre
yak
Newtype!!!
Messages : 6581
Enregistré le : sam. 10 juil. 2004, 14:18
Localisation : Chez moi

Message par yak »

Vitessse Execution...raaaahhhh.... Soyez moins speed...


J'avoue
J'en ai
Bavé
Pas vous
Mon amour
Avant
D'avoir
Eu vent
De vous
Mon amour

Ne vous déplaise
En dansant la Javanaise
Nous nous aimions
Le temps d'une chanson...
GOD FINGER!!!!

Avatar du membre
krAtul
Otaking !
Messages : 666
Enregistré le : sam. 20 mars 2004, 1:32
Localisation : Paris
Contact :

Message par krAtul »

Image
— "Observe, synthétise...".
"C'est comme si tu me pointais du doigt quelque chose d'ininteressant sur le coup et que ton doigt se retrouve en plus dans mon oeil." — Klaim

Avatar du membre
yak
Newtype!!!
Messages : 6581
Enregistré le : sam. 10 juil. 2004, 14:18
Localisation : Chez moi

Message par yak »

Image

j'aurais peut etre du mettre ça dans le thread à cyoran...
GOD FINGER!!!!

Avatar du membre
patrouchef
Grenouille enragée
Messages : 11285
Enregistré le : mar. 09 juil. 2002, 23:24
Localisation : Jardin des Hinata
Contact :

Message par patrouchef »

moi je vote pour un fake.

edit=> tiens d'ailleurs, la preuve, c'est un buste Bowen :

Image
"Girogirogirogirogirogirogirogirogiro !!!."

Avatar du membre
Klaim
Artisan Digital
Messages : 10635
Enregistré le : mar. 27 mai 2003, 13:13
Localisation : Paris
Contact :

Message par Klaim »


Avatar du membre
Jel
Otaking !
Messages : 958
Enregistré le : jeu. 27 juil. 2006, 12:16
Localisation : paris
Contact :

Message par Jel »

Hallucinant!

Ca fait un peu flipper quand même, parce qu'au niveau de la retouche d'image, et donc la manipulation du public, ça ouvre des perspectives inédites et illimitées.

Ca y est, je ne croirai vraiment plus ce que je vois!

Avatar du membre
Klaim
Artisan Digital
Messages : 10635
Enregistré le : mar. 27 mai 2003, 13:13
Localisation : Paris
Contact :

Message par Klaim »

Ben surtout, ça peut permettre une production sacrément cheap de modèles haute définition de personnages!

Répondre