A voir sur Livenet :

Derniers Sujets

Matériel Internet Logiciel
samedi 19 février 2005 à 04:36
Citer +Citer
Les deux sont proches... mais franchement différent:

1) un langage plus polyvalent contre un langage plus cohérent
hybride orienté-objet / procédurale pour C++
totalement orienté-objet pour Java

2) la souplesse d'utilisation contre une meilleure sûreté d'utilisation
typage permissif, arithmétique des pointeurs, héritage multiple, surcharge d'opérateur, passage par valeur pour le C++, ce qui augmente grandement les erreurs dûes à une conception défaillante et ne protège que peu contre les erreurs d'innattention.

3) la philosophie des APIs
créé par des groupes indépendants (des volontaires ou des universités souvent), les packages du C++ sont souvent peu cohérents entre eux et créé de manière incomplète voir avec des choix franchement douteux (la classe string est ridicule en C++ à côté de celle en Java). Cependant l'unité des APIs de JAVA vient que c'est SUN qui contrôle leurs devellopement

4) leurs programmes cibles
application bas niveau pour le C++ ou qui cherche l'efficacité / haut niveau pour le Java, surtout dans le domaine des applications distribuées

etc.

Le quel préféré vous et surtout pourquoi ?


Ce message a été modifié par Garulfo - samedi 19 février 2005 à 04:37.
samedi 19 février 2005 à 13:55
Citer +Citer
alors moi perso c'est le c++ mon préféré je ne connait que les bases mais il me plait bien..
par contre le js c'est basé sur le java ou il n'y a que le nom de ressemblant ?
lundi 21 février 2005 à 02:41
Citer +Citer
QUOTE (R0m4!n @ 19 Feb 2005 à 06:55)
alors moi perso c'est le c++ mon préféré je ne connait que les bases mais il me plait bien..
par contre le js c'est basé sur le java ou il n'y a que le nom de ressemblant ?

Le Javascript n'a rien a voir avec Java.

Mais connais tu Java ?
Et connais tu vraiment le C++ ?

Pour un débutant mon choix est immédiat : apprendre Java.
A moins que tu n'ais quelqu'un pour t'apprendre les bonnes habitudes, le C++ est un poison à longue écheance.
lundi 21 février 2005 à 07:00
Citer +Citer
A l'instant , je ne peux pas dire vraiment si Java est mieux que C++ mais j'ai travaillé le langage C++ durant un an et je dois dire que coder en Java devient extrêmement facile si on a la base en C++ (nivô classes et objets biensur) .

Java est plus robuste que C++ dans le sens ou il ne se sert pas des pointeurs (outils virtuel qui dirige vers un endroit dans la mémoire) , donc tu ne peux pas créer un virus, trojan, ver etc.. avec ce langage . D'ou sa force pour certains ou peut-être sa faiblesse pour d'autres .

Java est un langage simple , comme C++ mais avec Java , tu peux faire des applets (petites applications qui se servent d'un navigateur pour démarrer l'application) ,des menus GUI (J-Builder par exemple on peut créer des interfaces à la VB ou Delphi tant dis que C++ est basé Texte uniquement et compilé comme C ou Pascal ) . Avec Text Pad, Notepad ou autre editeur de texte par exemple , c'est le contraire , tu as à taper tes codes sources et tu le compiles et tu le démarres avec cmd .

Pour moi , les deux se complètent , tu peux faire des choses avec C++ que tu ne peux faire avec Java et vice-versa .
lundi 21 février 2005 à 07:29
Citer +Citer
Moi, pour le moment je travail beaucoup en c, donc je ne peux rien dire a propos du c++ et du java, si ce n'est que je trouve parfois les applications javas tres lourdes,mais peut être que c'est normal
lundi 21 février 2005 à 10:14
Citer +Citer
QUOTE

[ ...] totalement orienté-objet pour Java [...]

Tout n'est pas objet en Java ... Tu as des wrappers tels que int, float qui ne sont pas objets ...
à l'inverse de SmallTalk qui lui est totalement objet.


QUOTE

[...] Java est un langage simple [...]

Syntaxiquement, il est simple ... oui .. pour le reste, je pense que c'est un peu reducteur de
dire que ce langage est "simple" sleep.gif

Sinon pas de préférences ... ça dépend de ce que je veux (ou dois) faire ... biggrin.gif

@+
lundi 21 février 2005 à 12:04
Citer +Citer
QUOTE (silfaxu @ 21 Feb 2005 à 03:14)
QUOTE

[ ...] totalement orienté-objet pour Java [...]

Tout n'est pas objet en Java ... Tu as des wrappers tels que int, float qui ne sont pas objets ...
à l'inverse de SmallTalk qui lui est totalement objet.


QUOTE

[...] Java est un langage simple [...]

Syntaxiquement, il est simple ... oui .. pour le reste, je pense que c'est un peu reducteur de
dire que ce langage est "simple" sleep.gif

Sinon pas de préférences ... ça dépend de ce que je veux (ou dois) faire ... biggrin.gif

@+

Je n'ai pas dit que Java est tout objet.
Mais totalement orienté objet : il implémente la classe Object par exemple.
Sinon effectivement Smalltalk est totalement objet. À la base, tu n'as même pas les énoncés que tout le monde utilise comme le if et le while. Il existe des wrappers mais aussi de base, des objets pour chaque type de base. Les tableaux sont aussi des objets. C'est tres different de C++. La philosophie objet est presque complète.

Je n'ai pas dit qu'il etait simple ??
Mais on pourrait le dire en sous entend que c'est qu'il evite les interactions bas niveau (gestion manuelle de mémoire par exemple) et ce n'est qu'en comparaison avec C++. Pas d'un point de vue absolu.

Ce que je demande c'est est ce que tu as plus de plaisir à coder en l'un ou en l'autre et pour quelle raison. Si tu veux prendre des exemples précis, je t'en prie fais le. wink.gif

Personnellement, je ne préfère aucun de ces deux là et j'aime le fonctionnelle (dialecte de LISP par exemple).

Ce message a été modifié par Garulfo - lundi 21 février 2005 à 12:28.
lundi 21 février 2005 à 12:21
Citer +Citer
QUOTE (Visu@lSt@tion @ 21 Feb 2005 à 00:29)
Moi, pour le moment je travail beaucoup en c, donc je ne peux rien dire a propos du c++ et du java, si ce n'est que je trouve parfois les applications javas tres lourdes,mais peut être que c'est normal

Quand tu veux dire lourde tu veux dire lente ?

Oui tu as raison. Le java est compilé en byte-code puis interpreté par une machine virtuelle qui le transforme à la volée en exécution machine. Les avantages sont nombreux, et le plus important est que si une machine virtuelle existe sur une plateforme tu es sur que ton code y fonctionnera.
Cependant le fait d'interpreté un langage ralenti ses performances. Il y a aussi d'autre raison bien sur comme le garbage collector qui évite à celui qui dévellope de se préoccupé de la gestion mémoire. Ca offre un langage de plus haut niveau que le C ou le C++ qui deviennent peu à peu les nouveaux assembleurs (il devient plus intéressant d'utiliser l'assembleur obtenu par compilation que de faire soit même de l'assembleur).

Mais l'objectif des deux langages n'est pas le même. La mémoire utilisé par le Java va être théoriquement supérieur (si la personne faisant le même programme en C++ est bon... ce qui est très loin d'être évident wink.gif). Mais Java est surtout prévu pour des applets, des servlets, des serveurs, des clients... des applications qui soit tournent sur des gros serveurs (donc avec des ressources importantes), soit sont relativement petites.

Tu commences avec du C ?
Tu es inconscient... ou alors étudiant j'espère wink.gif
lundi 21 février 2005 à 12:27
Citer +Citer
QUOTE (lolocse @ 21 Feb 2005 à 00:00)
A l'instant , je ne peux pas dire vraiment si Java est mieux que C++ mais j'ai travaillé le langage C++ durant un an et je dois dire que coder en Java devient extrêmement facile si on a la base en C++ (nivô classes et objets biensur) .

Java est plus robuste que C++ dans le sens ou il ne se sert pas des pointeurs (outils virtuel qui dirige vers un endroit dans la mémoire) , donc tu ne peux pas créer un virus, trojan, ver etc.. avec ce langage . D'ou sa force pour certains ou peut-être sa faiblesse pour d'autres .

Java est un langage simple , comme C++ mais avec Java , tu peux faire des applets (petites applications qui se servent d'un navigateur pour démarrer l'application) ,des menus GUI (J-Builder par exemple on peut créer des interfaces à la VB ou Delphi tant dis que C++ est basé Texte uniquement et compilé comme C ou Pascal ) . Avec Text Pad, Notepad ou autre editeur de texte par exemple , c'est le contraire , tu as à taper tes codes sources et tu le compiles et tu le démarres avec cmd .

Pour moi , les deux se complètent , tu peux faire des choses avec C++ que tu ne peux faire avec Java et vice-versa .

Pas vraiment...

Tu ne peux pas créer des virus avec Java... enfin si... mais pas aussi efficace qu'avec le C++. Cependant ce n'est pas un avantage du Java. C'est un défaut. Il est moins flexible.
Par contre, il est plus robuste effectivement. Mais tu utilises mal le mot wink.gif
De même quand tu dis qu'il n'utilise pas de pointeurs c'est faux. Il n'utilise que ca pour réferencer les objets. Mais on ne peut pas y accéder.

Sinon les IDE (environnement de devellopemnt intégré) existent dans les deux langages. Et tu peux faire des applets avec les deux et des applications en ligne avec les deux.
Tu peux tout faire avec les deux (ou presque).
C'est plus une question de peine et de misère.
lundi 21 février 2005 à 12:41
Citer +Citer
QUOTE

[...] La philosophie objet est presque complète. [...]

Je préfère le "presque complète" au "totalement orientée-objet" ... biggrin.gif


lundi 21 février 2005 à 13:21
Citer +Citer
QUOTE (Garulfo @ 21 Feb 2005 à 01:41)
QUOTE (R0m4!n @ 19 Feb 2005 à 06:55)
alors moi perso c'est le c++ mon préféré je ne connait que les bases mais il me plait bien..
par contre le js c'est basé sur le java ou il n'y a que le nom de ressemblant ?

Le Javascript n'a rien a voir avec Java.

Mais connais tu Java ?
Et connais tu vraiment le C++ ?

Pour un débutant mon choix est immédiat : apprendre Java.
A moins que tu n'ais quelqu'un pour t'apprendre les bonnes habitudes, le C++ est un poison à longue écheance.

Je suis en trai d'apprendre le c++
pour le moment je n'est pas trop de souci avec et je trouve que c'est un language très pratique
ex : j'ai fait un script pour automatiser les installation faite avec InstallShield et c'est bien pratique : on lance l'install, on revient 10min apres et l'ordi vient de rebooter il est opérationel rolleyes.gif

enfin je me doute que l'on peut faire çà aussi en java puisque c'est uniquement du traitement de fichier mais je ne connait pas Java, donc j'utilise mes notions actuelles de C++
lundi 21 février 2005 à 20:46
Citer +Citer
QUOTE (Garulfo @ 21 Feb 2005 à 11:21)
Quand tu veux dire lourde tu veux dire lente ?

Oui tu as raison. Le java est compilé en byte-code puis interpreté par une machine virtuelle qui le transforme à la volée en exécution machine. Les avantages sont nombreux, et le plus important est que si une machine virtuelle existe sur une plateforme tu es sur que ton code y fonctionnera.
Cependant le fait d'interpreté un langage ralenti ses performances. Il y a aussi d'autre raison bien sur comme le garbage collector qui évite à celui qui dévellope de se préoccupé de la gestion mémoire. Ca offre un langage de plus haut niveau que le C ou le C++ qui deviennent peu à peu les nouveaux assembleurs (il devient plus intéressant d'utiliser l'assembleur obtenu par compilation que de faire soit même de l'assembleur).

Mais l'objectif des deux langages n'est pas le même. La mémoire utilisé par le Java va être théoriquement supérieur (si la personne faisant le même programme en C++ est bon... ce qui est très loin d'être évident wink.gif). Mais Java est surtout prévu pour des applets, des servlets, des serveurs, des clients... des applications qui soit tournent sur des gros serveurs (donc avec des ressources importantes), soit sont relativement petites.

Tu commences avec du C ?
Tu es inconscient... ou alors étudiant j'espère wink.gif

2tudiant pourquoi le c , c'est agréable j'aime bien, on peut faire plein de truc -Yum!.png
mardi 22 février 2005 à 03:25
Citer +Citer
QUOTE (silfaxu @ 21 Feb 2005 à 05:41)
QUOTE

[...] La philosophie objet est presque complète. [...]

Je préfère le "presque complète" au "totalement orientée-objet" ... biggrin.gif

Tu peux préférer mais je t'assure que la dénomination que j'ai utilisé est correcte.
J'avais est totalement orienté-objet mais n'implémente pas complétement le paradigme objet. tre totalement orienté objet est qu'on est obligé d'utiliser des objets (enfin pour simplifier).
mardi 22 février 2005 à 03:30
Citer +Citer
QUOTE (Visu@lSt@tion @ 21 Feb 2005 à 13:46)
[...]
Étudiant pourquoi ? le c , c'est agréable j'aime bien, on peut faire plein de truc -Yum!.png

Comme tous les langages...

Le C est un mauvais langage pour commencer. AUcune structure syntaxique imposé (ou presque), la possibilité de caster un peu quand on veut (typage fort pourtant mais très permissif), gestion manuelle de la mémoire, effet de bord souvent omniprésent mais mal contrôlé, beaucoup de fonctions non robuste, arithmétique des pointeurs etc.

Par contre c'est extremement efficace quand on est devenu un bon programmeur.
Sauf que 75% des analystes-programmeurs ne le sont pas. Ils savent coder, mais manque de rigueur pour être propre; ils ne savent pas documenter etc.

La roue commence a tourner et l'éducation (du moins nord-américaine car je ne suis plus ce qui se passe en France) à décidé de changer ca. C'est bien sur devenu une nécessité économique de toute facon.

Dans ce contexte, des langages plus limité (a priori) mais qui offre plus de sécurité sont parfois préferable. Ainsi l'ADA est le langage le plus utilisé dans les instances des gouvernements et les domaines sécuritaires.
mardi 22 février 2005 à 10:12
Citer +Citer
QUOTE

[...] Tu peux préférer [...]


Effectivement, je préfère ... sleep.gif

samedi 26 février 2005 à 05:29
Citer +Citer
QUOTE (silfaxu @ 21 Feb 2005 à 03:14)
QUOTE

[ ...] totalement orienté-objet pour Java [...]

Tout n'est pas objet en Java ... Tu as des wrappers tels que int, float qui ne sont pas objets ...
[...]

Ah oui a propos, j'avais oublié ca...
Les wrappeurs ce sont les objets qui s'enroule autour du type de base (d'où le nom) pour en faire un objet instance d'une classe.
Donc ce n'est pas int le wrapper mais Integer wink.gif
samedi 26 février 2005 à 09:09
Citer +Citer
Salut,

QUOTE

Les wrappeurs ce sont les objets qui s'enroule autour du type de base (d'où le nom) pour en faire un objet instance d'une classe.
Donc ce n'est pas int le wrapper mais Integer


Il était temps ... J'avais peur que tu ne réagisses pas .. siffle.gif

Et la partie Programmation, elle en est oú ? ...

@+
dimanche 27 février 2005 à 06:55
Citer +Citer
QUOTE (silfaxu @ 26 Feb 2005 à 02:09)
Salut,

QUOTE

Les wrappeurs ce sont les objets qui s'enroule autour du type de base (d'où le nom) pour en faire un objet instance d'une classe.
Donc ce n'est pas int le wrapper mais Integer


Il était temps ... J'avais peur que tu ne réagisses pas .. siffle.gif

Et la partie Programmation, elle en est oú ? ...

@+

Bel essai pour essayer de montrer que tu le savais mfr_lol.gif
Mais ca ne marche pas bien ce genre de technique. Ca te fait juste passer pour un crosser wink.gif

Nul part.. quand je demarre un sujet personne ne semble interesse. Regardes... qqs remarques mais personne de motiver.

S'il n'y a pas de sujet, il n'y aura pas de partie ou de sous partie.
dimanche 27 février 2005 à 14:41
Citer +Citer
voila c'est pourquoi il faudrait une réelle demande avant de créer un forum spécialisé
en attendant n'hésitez pas a poster vos problemes liés a la prog ici
lundi 28 février 2005 à 10:37
Citer +Citer
QUOTE

S'il n'y a pas de sujet, il n'y aura pas de partie ou de sous partie.


Dommage ...
Ferme   ^


Suggestion de sujets



A voir sur le portail Livenet.fr Le Club
Vidéos
Le mag
Forum
Jeux
Comparaison de prix
Nos partenaires Partenaires : php - Vidéos - PS3 - Rap et R&B - Cinéma - voyage - TNT - Séries en DVD
Contact et infos Le blog Livenet
Suggestions sur Livenet
Aide générale Livenet - Aide du Forum
Charte du forum
Mentions légales
Reporter un abus
Reporter un bug

Copyright © 2004-2008 Tigersun - Tous droits réservés - Powered By IP.Board © 2008  IPS, Inc.