C++ ou Java?

Résolu/Fermé
chrisee Messages postés 171 Date d'inscription dimanche 23 février 2014 Statut Membre Dernière intervention 29 juillet 2017 - 12 sept. 2014 à 00:19
Fermiparadox Messages postés 11215 Date d'inscription samedi 26 avril 2014 Statut Membre Dernière intervention 28 août 2016 - 29 sept. 2014 à 16:18
Y'a t-il des choses qu'on peut faire avec java et non avec le langage c++?Je ne suis pas informaticien,mais j'aimerais quand meme me lancer dans la programmation par le simple desire d'apprendre.J'aimerais commencer vraiment par un des deux,vu qu'il parrait que c'est trs puissant,mais j'aimerais connaitre leur avantages ainsi que liimites?Merci
A voir également:

5 réponses

epitale Messages postés 3942 Date d'inscription jeudi 5 février 2009 Statut Membre Dernière intervention 27 octobre 2017 915
12 sept. 2014 à 00:51
bonsoir chrisee,
je connais plus C++ mais dirais peut importe le language pourvu qu'on est le virus... Si tu en connais un bien, après tous les autres se ressemble assez, bon développement a toi..

--
0
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 835
12 sept. 2014 à 00:53
Pourquoi enlever le "Bonjour" mis en place automatiquement ?
Quand on se lance dans la programmation, il faut d'abord maîtriser l'algorithmique.
Ensuite pour le langage, tu peux faire quasiment les mêmes choses dans les deux langages. Le Java, de par son bytecode est plus "limité" en terme d'application mais un peu plus simple (pas besoin de s'embêter avec le garbage collector, et cie).
Perso, si je commençais, je m'orienterais vers un langage beaucoup plus simple comme le python. Cela te permettra de te faire les dents avec l'algorithmique dans un premier temps. Et puis, tu verras que c'est un langage très puissant.
Un petit lien : https://www.commentcamarche.net/faq/457-programmation-comment-debuter-quel-langage#java
Cdlt,
0
KX Messages postés 16734 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 24 avril 2024 3 015
12 sept. 2014 à 08:08
"Le Java, de par son bytecode est plus "limité" en terme d'application"
Mouais... enfin au besoin y a toujours JNI, d'ailleurs un certain nombre de méthodes des bibliothèques standard utilisent cette technologie pour déléguer le traitement. Ce qui permet à Java de faire plus ou moins tout ce qu'il veut même sur des appels systèmes.
Mais les programmes de bureau n'ont jamais fait vivre Java, le domaine principale d'application ce sont les applications serveurs (Java EE) ou mobile (Java ME à l'époque, Android aujourd'hui).
L'intérêt du bytecode est surtout de décorreler la JVM du langage Java, et ainsi permettre à d'autres langages (Scala, Groovy, etc.) se compilant aussi en bytecode d'être exécutés sur la JVM, de même qu'un certain nombre de langages reviennent au C au moment de la compilation...
0
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 835
12 sept. 2014 à 12:51
Oui, mais vu la requête du monsieur, il n'est donc pas question ici de choisir une technologie pour s'interfacer avec une autre ; mais de tout faire dans un et même langage. Et en respectant sa demande (je ne la partage pas), le C++ permet de faire plus de chose qu'en Java. Tout comme le C++ permet de faire plus de chose qu'en Python. Pourtant, si je devais choisir entre ces 3 langages, ce n'est clairement pas le C++ que je prendrais :-).
0
KX Messages postés 16734 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 24 avril 2024 3 015
12 sept. 2014 à 20:01
"vu la requête du monsieur" Bah justement...
"Y'a t-il des choses qu'on peut faire avec java et non avec le langage c++?"
Bah en Java on peut faire une interface avec le C++ ou avec d'autres langages de bytecode, ce qui permet une plus grande portabilité en particulier entre les différents OS...
La JVM est quand même le plus gros point de différenciation entre Java et C++ cela se ressent surtout sur les outils qui en découlent et qui facilitent quand même le développement.
Le Java sacrifie certes les performances (mais finalement pas tant que ça), alourdit clairement le code, mais c'est des contraintes nécessaires à de très gros projets, ça impose de bonne pratique de codage et le programme gagne en robustesse et en correction. L'idéal pour apprendre ? :-)
0
epitale Messages postés 3942 Date d'inscription jeudi 5 février 2009 Statut Membre Dernière intervention 27 octobre 2017 915
12 sept. 2014 à 01:04
bsr fiddy
on est d'accord
a la limite pour débuter, une bonne maitrise du php peut suffire a pas mal de chose, tu as un projet, des besoins ?


--
0
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 835
12 sept. 2014 à 02:04
Bonsoir,
Euh, commencer à programmer en php ce n'est pas le top... Vaut mieux prendre un langage permettant de prendre de bonnes habitudes et avec une syntaxe simple... comme le... python :-).
Sinon, non pas de projet pour ma part ;-).
0
Fermiparadox Messages postés 11215 Date d'inscription samedi 26 avril 2014 Statut Membre Dernière intervention 28 août 2016 2 911
Modifié par Fermiparadox le 29/09/2014 à 16:18
Y'a des choses qu'on peut dire, aussi : "BONJOUR" par exemple...
De rien !
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
chrisee Messages postés 171 Date d'inscription dimanche 23 février 2014 Statut Membre Dernière intervention 29 juillet 2017 10
12 sept. 2014 à 02:39
Je suis plutot le genre à assimiler facilement et quelqu'un de pateint,et j'ai des bonnes base en algorithmique.Donc je ne veux pas seulement,mais connaitre un langage et me spécialiser là-dessus.Un langage sans limite avec lequel je peux faire toute la folie comme bon me semble.Et pour php,j'ai lu quelque part,c'est pour le web,qui ne me passionne pas tellement
-1
fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022 1 835
12 sept. 2014 à 12:52
Non, mais pas le php, c'est une mauvaise idée.
Par contre, as-tu regardé le Python ?
Si tu veux vraiment un langage qui te permette de tout faire, fais en assembleur ;-).
Ce que je veux dire par là, c'est qu'un langage n'est pas optimale dans tous les domaines. Il vaut mieux connaître plusieurs langages. C'est largement plus performant. Pas besoin de faire des dizaines de lignes de code dans un langage lorsque tu peux le faire en 2 dans un autre...
0
chrisee Messages postés 171 Date d'inscription dimanche 23 février 2014 Statut Membre Dernière intervention 29 juillet 2017 10 > fiddy Messages postés 11069 Date d'inscription samedi 5 mai 2007 Statut Contributeur Dernière intervention 23 avril 2022
12 sept. 2014 à 22:21
On m.a dit qu'avec ce truc là assembleur,on doit coder en Hexadecimal,ou genre langage machine.Je pense que c'est difficile à apprendre
0
KX Messages postés 16734 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 24 avril 2024 3 015 > chrisee Messages postés 171 Date d'inscription dimanche 23 février 2014 Statut Membre Dernière intervention 29 juillet 2017
12 sept. 2014 à 23:16
Fiddy plaisantait en parlant de l'assembleur...
Mais comme c'est le langage qui pilote directement le processeur c'est le seul à pouvoir tout faire directement. Les autres langages utilisent des procédures déjà toutes faites pour les opérations les plus courantes. Du coup tu ne peux pas faire exactement ce que tu veux puisque tu es obligé d'utiliser ces procédures toutes faites.
On parle souvent de langage de bas niveau et de haut niveau, ça correspond à la granularité de ces procédures, plus elles sont petites plus elles se rapprochent d'une opération unitaire pour le processeur, c'est du bas niveau, au contraire une procédure qui fait une opération complexe du début à la fin sans que tu puisses agir sur la manière de faire alors c'est un langage de haut niveau.
L'assembleur est le langage de plus bas niveau (en dessous c'est du domaine de l'électronique), le C est parmi les langages de bas niveau, c'est d'ailleurs pour ça que les systèmes d'exploitation sont majoritairement écrits en C (au moins la couche la plus basse), viennent ensuite le C++ et le Java qui lui amène une couche de complexité supplémentaire vu qu'il est interprété par une machine virtuelle (la JVM) qui est écrite en C++.
On pourrait penser que les langages de haut niveau sont plus simple à apprendre que ceux de bas niveau. Ce n'est pas forcément faux, mais ils sont surtout plus limités. Si des langages de haut niveau comme Python peuvent s'écrire en deux lignes c'est parce que tu n'as pas à tout détailler dans les instructions à effectuer pour arriver au résultat, c'est simple mais en contrepartie si ça ne fait pas exactement ce que tu veux tu devras faire avec quand même.
C++ et Java sont relativement de même niveau (Java un peu plus haut que C++) ils sont un compromis entre les langages de bas niveau et ceux de haut niveau. Tu peux tout faire, soit parce qu'il existe déjà des procédure de haut niveau qui feront ce que tu veux, soit parce que tu auras la main sur les instructions de plus bas niveau pour détailler les traitements comme tu le souhaite.
Ceci étant dit, le critère haut/bas niveau n'est pas le seul qui distingue les langages il y a aussi les paradigmes de programmation...
0
KX Messages postés 16734 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 24 avril 2024 3 015
12 sept. 2014 à 20:06
Sinon à cheval entre le C++ et le Java, on a le C#, entre le Python et le Java on a Groovy...
À chaque problème son langage, de toute façon au final, c'est que des 0 et des 1 !
0