A voir également:
- Java vs C++
- Waptrick java football - Télécharger - Jeux vidéo
- Jeux java itel football - Télécharger - Jeux vidéo
- Udp vs tcp - Guide
- Java apk - Télécharger - Langages
- Télécharger jeux java gameloft gratuit - Forum Mobile
9 réponses
depuis maintenant peu de temps, le Java est interprété au niveau hardware par certain processeur ARM comme des instructions natives (comme le C) grâce à la technologie Jazelle, mais cela nécessite un co-processeur dédié ce qui n'est pas toujours possible à être intégré.
Néanmoins merci pour ton support.
Néanmoins merci pour ton support.
le C++ ne peut il pas faire la meme chose que le Java ?
Je sais que sur le web il y a de nombreux sujets a ce propos, mais je cherche plus une réponse précise plutôt qu'une complète encyclopédie (que je lis pourtant mais qui ne m'apporte pas pour autant des réponses très attendue).
d'ailleurs, une question, pourquoi intégré un co-processeur Java à un system on chip (SoC) si le c++ a les meme possibilité ? est ce que le code est plus petit ?
et dernièrement, est ce que Java Direct Bytecode eXecution (DBX) est la possibilité d'exécuter du code Java comme un code natif par le microprocesseur ?
Je sais que sur le web il y a de nombreux sujets a ce propos, mais je cherche plus une réponse précise plutôt qu'une complète encyclopédie (que je lis pourtant mais qui ne m'apporte pas pour autant des réponses très attendue).
d'ailleurs, une question, pourquoi intégré un co-processeur Java à un system on chip (SoC) si le c++ a les meme possibilité ? est ce que le code est plus petit ?
et dernièrement, est ce que Java Direct Bytecode eXecution (DBX) est la possibilité d'exécuter du code Java comme un code natif par le microprocesseur ?
fiddy
Messages postés
11069
Date d'inscription
samedi 5 mai 2007
Statut
Contributeur
Dernière intervention
23 avril 2022
1 842
8 oct. 2008 à 15:51
8 oct. 2008 à 15:51
Je vais pas pouvoir répondre à toutes tes questions, pas trop mon domaine.
Mais sinon, le Java a l'avantage d'être compilé en un langage intermédiaire (le byte-code). Et ce code-là pourra être distribué sur toutes les plates-formes. Ce n'est pas l'OS qui exécutera directement le code semi-compilé mais la machine virtuelle. C'est ce qui explique la portabilité.
Avec le C++, tu le compiles pour un type de processeur. Donc ton code ne sera pas portable.
Voilà la principale différence.
Mais sinon, le Java a l'avantage d'être compilé en un langage intermédiaire (le byte-code). Et ce code-là pourra être distribué sur toutes les plates-formes. Ce n'est pas l'OS qui exécutera directement le code semi-compilé mais la machine virtuelle. C'est ce qui explique la portabilité.
Avec le C++, tu le compiles pour un type de processeur. Donc ton code ne sera pas portable.
Voilà la principale différence.
Bien que le java soit mis en avance pour sa portabilité n'est pas vraiment ydillique il est vrai, mais il semble que les efforts pour les nouvelles release soit mis en avant par les développeurs. Ce qui est intéressant, je crois, c'est lorsqu'on désire faire des gros projets qui supporte plusieurs programme, venant d'origine différente de pouvoir les assembler ensemble sans a avoir de tout réécrire et recompiler toujours. Même si il semble qu'il y ai toujours un petit temps d'adaptation de programme. Cela ne marche pas "first try, fisrt done" (je crois que l'expression s'écrit comme ça). Mais après toute mes recherches, en effet la portabilité semble être le plus gros souci du java.
fiddy
Messages postés
11069
Date d'inscription
samedi 5 mai 2007
Statut
Contributeur
Dernière intervention
23 avril 2022
1 842
10 oct. 2008 à 16:04
10 oct. 2008 à 16:04
Le plus gros souci ?
Bof. Pas vraiment. Le seul problème de compatibilité est dans les machines virtuelles. Si ce n'est pas la bonne version, ça ne marchera pas. Ce qui est logique.
Pour moi le plus gros souci de java est sa lourdeur. Tout est plus lourd que dans les autres langages. Bon ceci est de moins en moins un problème avec le progrès des PC (mémoires et processeurs).
Mais pour les petites mémoires, le JAVA pose toujours problème.
Bof. Pas vraiment. Le seul problème de compatibilité est dans les machines virtuelles. Si ce n'est pas la bonne version, ça ne marchera pas. Ce qui est logique.
Pour moi le plus gros souci de java est sa lourdeur. Tout est plus lourd que dans les autres langages. Bon ceci est de moins en moins un problème avec le progrès des PC (mémoires et processeurs).
Mais pour les petites mémoires, le JAVA pose toujours problème.
Parmi mes recherches c'est en effet un point sur lequel j'ai oublier d'ajouter dans les défauts. Le java (même la techno Jazelle) est réservé pour les processeurs supérieur à 1GHz, avant la lourdeur empêche une réelle fluidité des programmes. C'est d'ailleurs pourquoi cette techno n'est pas intégré au processeur plus vieux.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
fiddy
Messages postés
11069
Date d'inscription
samedi 5 mai 2007
Statut
Contributeur
Dernière intervention
23 avril 2022
1 842
8 oct. 2008 à 15:36
8 oct. 2008 à 15:36
Salut,
Sur internet, il y a pleins de sites qui parle de ça.
Sinon sans rentrer dans les détails. Le Java a l'avantage d'être facilement portable, tout du moins plus que le C++ car pas besoin de recompiler pour chacune des plate-formes.
Sur internet, il y a pleins de sites qui parle de ça.
Sinon sans rentrer dans les détails. Le Java a l'avantage d'être facilement portable, tout du moins plus que le C++ car pas besoin de recompiler pour chacune des plate-formes.
J'apporte moi même quelques réponses à mes propres questions si un jour qq un se pose les même questions :
Pourquoi choisir le JAVA plutôt que le C/C++
1er : Les applications écrites en JAVA sont plus facilement portable sur d'autre plateforme et généralement plus rapide. Ce qui permet un cout plus faible et un temps de développement plus rapide.
2eme : il y a une grande communauté qui supportent le JAVA, constamment en amélioration d'ou le développement des application third parties.
3eme : Java est un langage plus sécurisé.
4eme : Bytecode permet un bon rendement pour la mémoire, cela réduit le temps de téléchargement d'une application, et un stockage plus facile.
En parlant des applications portables, avec une quantité de mémoire plus petites et un cout moindre (acheter un téléphone portable a 500€, pas facile).
Je travaille conjointement avec la compagnie ARM qui implante de plus en plus des optimisations pour le JAVA grâce à leur technologie Jazelle.
Si des personnes sont intéressé par des informations ou souhaiterais s'équiper de produit de développement ARM, je peux les aider.
Voila je crois avoir répondue finalement à toutes mes questions.
_________________________________________
CMP, Distributor for ARM tools for university and laboratory
Pourquoi choisir le JAVA plutôt que le C/C++
1er : Les applications écrites en JAVA sont plus facilement portable sur d'autre plateforme et généralement plus rapide. Ce qui permet un cout plus faible et un temps de développement plus rapide.
2eme : il y a une grande communauté qui supportent le JAVA, constamment en amélioration d'ou le développement des application third parties.
3eme : Java est un langage plus sécurisé.
4eme : Bytecode permet un bon rendement pour la mémoire, cela réduit le temps de téléchargement d'une application, et un stockage plus facile.
En parlant des applications portables, avec une quantité de mémoire plus petites et un cout moindre (acheter un téléphone portable a 500€, pas facile).
Je travaille conjointement avec la compagnie ARM qui implante de plus en plus des optimisations pour le JAVA grâce à leur technologie Jazelle.
Si des personnes sont intéressé par des informations ou souhaiterais s'équiper de produit de développement ARM, je peux les aider.
Voila je crois avoir répondue finalement à toutes mes questions.
_________________________________________
CMP, Distributor for ARM tools for university and laboratory
cedric1989
Messages postés
257
Date d'inscription
samedi 19 avril 2008
Statut
Membre
Dernière intervention
25 octobre 2012
37
9 oct. 2008 à 20:58
9 oct. 2008 à 20:58
bof la portabilité faut faire attention, car si on travaille en entreprise, ou dans un école sur des machines qui n'ont pas de machines virtuelles, et ou bien sur on ne peut pas en installer, je vois pas trop ou est l'avantage de portabilité.(Avec un programme écrit en C, il n'y aurait pas eu ce problème)
Et en C/C++, il suffit d'utiliser des bibliothèques portables, et on peut compiler sur plusieurs système d'exploitation.
De plus, les problème de portabilité inévitable en C++, qui sont évitable en java, j'en ai jamais vu, maintenant j'ai peut être pas assez d'expérience.
Le langage C++ a aussi une grande communauté. On trouve très facilement de l'information, et on obtient très facilement des réponses a nos problèmes que ce soit java ou C++.
Sinon C++ serait légèrement plus rapide que java (mais c'est pas toujours visible à l'oeil humain), mais la probabilité de faire des erreurs de programmations seraient un peu plus élevé en C++.
Sinon je pense qu'il n'y a pas de réponse exacte à ta question, il n'y a pas vraiment de langage meilleur que d'autres. Les deux ont leur avantages et inconvénients. Ceux qui te répondent en te parlant seulement d'un seul langage ne sont pas trés objectif, pour les 2 langages on peut trouver des bons arguments. Par exemple, c'est clair que jokerali73 n'a juste pour objectif de faire de la pub pour java.
J'ai quand même l'impression que concernant les jeux vidéo, il est quand même plus facile de trouver de l'aide, et des bibliothèques en C++, qu'en java. Pour le reste, je sait pas lequel pourrait être le meilleur.
Et en C/C++, il suffit d'utiliser des bibliothèques portables, et on peut compiler sur plusieurs système d'exploitation.
De plus, les problème de portabilité inévitable en C++, qui sont évitable en java, j'en ai jamais vu, maintenant j'ai peut être pas assez d'expérience.
Le langage C++ a aussi une grande communauté. On trouve très facilement de l'information, et on obtient très facilement des réponses a nos problèmes que ce soit java ou C++.
Sinon C++ serait légèrement plus rapide que java (mais c'est pas toujours visible à l'oeil humain), mais la probabilité de faire des erreurs de programmations seraient un peu plus élevé en C++.
Sinon je pense qu'il n'y a pas de réponse exacte à ta question, il n'y a pas vraiment de langage meilleur que d'autres. Les deux ont leur avantages et inconvénients. Ceux qui te répondent en te parlant seulement d'un seul langage ne sont pas trés objectif, pour les 2 langages on peut trouver des bons arguments. Par exemple, c'est clair que jokerali73 n'a juste pour objectif de faire de la pub pour java.
J'ai quand même l'impression que concernant les jeux vidéo, il est quand même plus facile de trouver de l'aide, et des bibliothèques en C++, qu'en java. Pour le reste, je sait pas lequel pourrait être le meilleur.
Char Snipeur
Messages postés
9813
Date d'inscription
vendredi 23 avril 2004
Statut
Contributeur
Dernière intervention
3 octobre 2023
1 298
10 oct. 2008 à 15:22
10 oct. 2008 à 15:22
Les problème de portabilité en C++ qui ne sont pas en java interviennent dans certain cas. Je n'utilise que Linux et XP, donc il peut y avoir d'autres souci lorsque les processerus sont différents :
Problèmes de portabilité des interfaces graphiques, si tu utilise les GUI windows, impossible de porter directement sous Linux (ou alors peut être avec Wine, mais c'est pas gagné) et inversement si tu utilise le X11 de base.
Ensuite, les sockets ne sont pas exactement pareil.
Dernier exemple, la mesure de l'occupation CPU. Bref plein d'exemple.
Par contre, plutôt d'accord sur la portabilité Java qui n'est pas aussi idyllique qu'on le dit souvent.
Problèmes de portabilité des interfaces graphiques, si tu utilise les GUI windows, impossible de porter directement sous Linux (ou alors peut être avec Wine, mais c'est pas gagné) et inversement si tu utilise le X11 de base.
Ensuite, les sockets ne sont pas exactement pareil.
Dernier exemple, la mesure de l'occupation CPU. Bref plein d'exemple.
Par contre, plutôt d'accord sur la portabilité Java qui n'est pas aussi idyllique qu'on le dit souvent.
Ahh désolé que vous me compreniez comme ça. En effet j'ai posé des questions car vraiment je ne savais pas. ensuite après des recherches j'ai finalement trouvé des réponses à mes questions. Mais dans un cas précis d'une utilisation de Java dans des application embarqué et une implantation de Java dans les microprocesseurs.
Ma question original était pourquoi faire tant d'effort pour implanté un technologie pour exploité le Java alors que les processeurs sont à la base programmé en C/C++.
Ensuite mes réponses sortent des documentations du constructeur. Pour une plus grande flexibilité, il a été choisi de donner la possibilité d'utiliser le Java et le C sur leur processeur et dans un effort de donné des programme rapide, autant en C que en Java il implante leur technologie.
De plus je ne parlais pas de langage meilleur qu'un autre, mais seulement pourquoi préféré l'un plutôt que l'autre ou pourquoi faire tant d'effort pour intégré le java si le C permet la même chose. Sachant que le C est un langage de base qui ne nécessite pas de techno particulière contrairement au Java.
Alors oui c'est étrange j'ai donné moi même des réponses, je n'aurais pas donné les réponses si cela n'intéressait personne. Ensuite je ne travaille pas POUR ARM, mais je travaille conjointement.
Et pour la gouverne de NiqueLapub (un pseudo très évocateur, a se demander si tu n'es pas venu ici pour pourrir mon post) ARM possède près de 80% du marché des microprocesseurs. Tu as un portable, une console de jeux portable, un GPS, baladeur mp3, il y a de forte chance qu'il soit équipé d'un processeur ARM. Si tu avais lu les autres posts, tu te serais rendu compte que je parle dans un cas précis : SoC.
Je ne fais pas de pub, qui acheterais un processeur nu ? pourquoi faire ? mais si des universités ont des volonté d'apprentissage, alors elles peuvent être intéressées.
Ma question original était pourquoi faire tant d'effort pour implanté un technologie pour exploité le Java alors que les processeurs sont à la base programmé en C/C++.
Ensuite mes réponses sortent des documentations du constructeur. Pour une plus grande flexibilité, il a été choisi de donner la possibilité d'utiliser le Java et le C sur leur processeur et dans un effort de donné des programme rapide, autant en C que en Java il implante leur technologie.
De plus je ne parlais pas de langage meilleur qu'un autre, mais seulement pourquoi préféré l'un plutôt que l'autre ou pourquoi faire tant d'effort pour intégré le java si le C permet la même chose. Sachant que le C est un langage de base qui ne nécessite pas de techno particulière contrairement au Java.
Alors oui c'est étrange j'ai donné moi même des réponses, je n'aurais pas donné les réponses si cela n'intéressait personne. Ensuite je ne travaille pas POUR ARM, mais je travaille conjointement.
Et pour la gouverne de NiqueLapub (un pseudo très évocateur, a se demander si tu n'es pas venu ici pour pourrir mon post) ARM possède près de 80% du marché des microprocesseurs. Tu as un portable, une console de jeux portable, un GPS, baladeur mp3, il y a de forte chance qu'il soit équipé d'un processeur ARM. Si tu avais lu les autres posts, tu te serais rendu compte que je parle dans un cas précis : SoC.
Je ne fais pas de pub, qui acheterais un processeur nu ? pourquoi faire ? mais si des universités ont des volonté d'apprentissage, alors elles peuvent être intéressées.
fiddy
Messages postés
11069
Date d'inscription
samedi 5 mai 2007
Statut
Contributeur
Dernière intervention
23 avril 2022
1 842
10 oct. 2008 à 13:32
10 oct. 2008 à 13:32
La comparaison entre le C et le java est rapide. Java est objet et le C non.
Donc on va comparer plutôt le Java avec le C++ qui sont tous les deux des langages objets.
Le java comme je t'ai dit plus haut, est portable contrairement au C++. Mais le Java n'est pas compréhensible directement par le processeur. Il faut donc installer une machine virtuelle. Donc pour l'embarqué, c'est hors de question.
De plus le Java est extrêmement coûteux en mémoire, tout du moins plus que le C++. Mais le Java est plus sécurisé.
Tu vois donc que chacun ont des avantages et des inconvénients.
Voilà pourquoi les deux sont tant utilisés.
Cdt
Donc on va comparer plutôt le Java avec le C++ qui sont tous les deux des langages objets.
Le java comme je t'ai dit plus haut, est portable contrairement au C++. Mais le Java n'est pas compréhensible directement par le processeur. Il faut donc installer une machine virtuelle. Donc pour l'embarqué, c'est hors de question.
De plus le Java est extrêmement coûteux en mémoire, tout du moins plus que le C++. Mais le Java est plus sécurisé.
Tu vois donc que chacun ont des avantages et des inconvénients.
Voilà pourquoi les deux sont tant utilisés.
Cdt
10 oct. 2008 à 14:38
Mais, le cas général répond à ta question initiale ;)
Tout le monde n'a pas des processeurs "jazelle".