Votre avis : C++ ou C# ?

Votre avis : C++ ou C# ? - C++ - Programmation

Marsh Posté le 11-07-2006 à 09:35:07    

Bonjour à tous,
 
Je voulais savoir dans quel cadre d'appli vous utilisez plutot l'un ou l'autre de ces langages.
 
Je vois que le C# se développe de plus en plus, est ce que cela signifie que c'est bientot (le temps est relatif :p) la fin du C++ ?
 
Est ce que tout programmeur de C++, dois se mettre au C# ? afin d'anticiper.
 
Merci.

Reply

Marsh Posté le 11-07-2006 à 09:35:07   

Reply

Marsh Posté le 11-07-2006 à 09:44:00    

Ne te pose pas de questions, et apprends ce langage tu ne le regretteras pas. Tu peux l'utiliser dans toute appli, même celles qui à priori ne sont pas faites pour, comme des plugins winamp par exemple (faits pour être développés en C).
Le C# est un langage très agréable, facile à apprendre, performant et très plaisant. Je ne dirais pas que c'est un C++ killer, mais il est bien plus abordable, et plus sexy


---------------
J'ai un string dans l'array (Paris Hilton)
Reply

Marsh Posté le 11-07-2006 à 09:45:31    

Je ne connais pas le C#, mais je ne conseillerais pas le C++ à mon pire ennemi.

Reply

Marsh Posté le 11-07-2006 à 09:46:51    

Je plussoie harkonnen, en ajoutant que l'environnement de dev est le plus agréable que j'aie connu. Le framework .net est de plus suffisamment fourni pour les besoins les plus courant de 2006.

Reply

Marsh Posté le 11-07-2006 à 11:10:46    

le C++, c'est le futur cobol :o


---------------
brisez les rêves des gens, il en restera toujours quelque chose...  -- laissez moi troller sur discu !
Reply

Marsh Posté le 11-07-2006 à 11:31:52    

je ne connais pas du tout C#, mais je n'en ai entendu que du bien par les gens qui le pratiquent.
 
Ceci dit, dans mon domaine (développement de codes de calcul scientifique), je pense qu'il faudra attendre un certain temps avant que C++ soit abandonné (on est à peine en train de faire la transition Fortran->C++, alors d'ici qu'on se mette au C#...)
 
Quant à la mort de C++, je pense qu'elle n'arrivera pas de sitôt non plus. Le comité de normalisation ISO C++ est très actif et de nombreuses entreprises continuent d'investir beaucoup sur ce langage. La prochaine norme (autour de 2008) devrait apporter plein de changements et une plus grande flexibilité, ce qui rendra peut-être C++ plus abordable pour les débutants (et plus sexy).


---------------
TriScale innov
Reply

Marsh Posté le 11-07-2006 à 15:12:37    

franceso > y'a du boulot :D

Reply

Marsh Posté le 11-07-2006 à 20:15:25    

franceso a écrit :

Ceci dit, dans mon domaine (développement de codes de calcul scientifique), je pense qu'il faudra attendre un certain temps avant que C++ soit abandonné (on est à peine en train de faire la transition Fortran->C++, alors d'ici qu'on se mette au C#...)


 
Et qu'apportera le C# au calcul scientifique ?
 

Citation :

Quant à la mort de C++, je pense qu'elle n'arrivera pas de sitôt non plus. Le comité de normalisation ISO C++ est très actif et de nombreuses entreprises continuent d'investir beaucoup sur ce langage.


Investir beaucoup ?
 

Citation :

La prochaine norme (autour de 2008) devrait apporter plein de changements et une plus grande flexibilité, ce qui rendra peut-être C++ plus abordable pour les débutants (et plus sexy).


Début 2009 à ce que j'ai entendu dire. Mais apparemment, le timing va être sérré pour intégrer tout les proposals. Jusqu'à présent, il n'y a vraiment que ceux de base qui sont intégré à C++0X. Question core, je crois qu'on sera pas déçu; Question bibliothèque, il y a des choses, mais j'espère qu'on aura aussi XML et networking ...

Reply

Marsh Posté le 11-07-2006 à 22:55:59    

++fab a écrit :

Et qu'apportera le C# au calcul scientifique ?


:jap: clairement !

Reply

Marsh Posté le 12-07-2006 à 10:05:01    

++fab a écrit :

Et qu'apportera le C# au calcul scientifique ?

A mon avis, C++ fournit déjà tous les outils nécessaires pour faire un bon code de calcul, à la fois portable, maintenable et efficace. Je ne vois donc pas ce que C# pourrait apporter de plus au calcul scientifique. Pour moi C++ est clairement le langage le plus adapté aux projets sur lesquels je travaille. Je voulais juste modérer mon propos en signalant que C# commençait à apparaître de façon marginale dans le domaine du calcul scientifique (je sais par exemple que certains projets au CEA utilisent C# pour développer des bibliothèques de calcul parallèle, et ils ont l'air content). Maintenant, je ne suis pas tellement en mesure d'en dire plus car, comme je l'ai dit, je ne connais rien au C#.
 

++fab a écrit :

Citation :

Quant à la mort de C++, je pense qu'elle n'arrivera pas de sitôt non plus. Le comité de normalisation ISO C++ est très actif et de nombreuses entreprises continuent d'investir beaucoup sur ce langage.


Investir beaucoup ?

Un certain nombre d'entreprises (comme par exemple google) suivent de très près les travaux du comité C++, et investissent beaucoup dans des bibliothèques écrites en C++, etc. C'est à mon avis la preuve que le langage est bien vivant, évolue et n'est pas près de mourir.
 

++fab a écrit :

Citation :

La prochaine norme (autour de 2008) devrait apporter plein de changements et une plus grande flexibilité, ce qui rendra peut-être C++ plus abordable pour les débutants (et plus sexy).


Début 2009 à ce que j'ai entendu dire. Mais apparemment, le timing va être sérré pour intégrer tout les proposals. Jusqu'à présent, il n'y a vraiment que ceux de base qui sont intégré à C++0X. Question core, je crois qu'on sera pas déçu; Question bibliothèque, il y a des choses, mais j'espère qu'on aura aussi XML et networking ...


Malheureusement, je crois que tu vas être déçu par les extensions de la bibliothèque standard : j'ai suivi la semaine dernière des cours de :love: Gabriel Dos Reis :love: (l'un des collègues de Bjarne Stroustrup) : pour l'instant XML et Networking n'apparaissent pas dans les extensions de bibliothèque prévues et vu le peu de temps qu'il leur reste, il semble très improbable que ce soit inclus.
De mon côté, ce qui m'intéresse c'est surtout les concepts, alors je ne devrais pas être déçu.


---------------
TriScale innov
Reply

Marsh Posté le 12-07-2006 à 10:05:01   

Reply

Marsh Posté le 12-07-2006 à 12:09:54    

kadreg a écrit :

le C++, c'est le futur cobol :o


Ah non ça c'est le Java, le C++ c'est une pieuvre fabriquée en collant des pattes supplémentaires à un chien [:aloy]


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
Reply

Marsh Posté le 13-07-2006 à 21:48:23    

franceso a écrit :

A mon avis, C++ fournit déjà tous les outils nécessaires pour faire un bon code de calcul, à la fois portable, maintenable et efficace.


Oui, mais pas de la à dire que c'est l'idéal.
 

Citation :

Je voulais juste modérer mon propos en signalant que C# commençait à apparaître de façon marginale dans le domaine du calcul scientifique (je sais par exemple que certains projets au CEA utilisent C# pour développer des bibliothèques de calcul parallèle, et ils ont l'air content).

J'aimerais bien aussi connaitre l'origine de cette apparition marginale -- si ce n'est pas "on essaye un projet C# voir ce que ça a dans le ventre".
 

Citation :

Un certain nombre d'entreprises (comme par exemple google) suivent de très près les travaux du comité C++, et investissent beaucoup dans des bibliothèques écrites en C++, etc.


Je croyais que ta remarque évoquait la participation de ces entreprises au sein du comité C++.
 

Citation :

Malheureusement, je crois que tu vas être déçu par les extensions de la bibliothèque standard : j'ai suivi la semaine dernière des cours de :love: Gabriel Dos Reis :love: (l'un des collègues de Bjarne Stroustrup) : pour l'instant XML et Networking n'apparaissent pas dans les extensions de bibliothèque prévues et vu le peu de temps qu'il leur reste, il semble très improbable que ce soit inclus.


XML et Networking sont dans TR2, et je suis sur d'avoir lu une présentation d'une bibliothèque de flux type socket (nstream je crois). Dommage que ça n'ait pas bougé plus de ce côté là. Mais bon, ça partait de loin vu qu'il n'y a guère de bibliothèque exploitable ou desquelles s'inspirer dans ces domaines.
 

Citation :


De mon côté, ce qui m'intéresse c'est surtout les concepts, alors je ne devrais pas être déçu.


(Bien que type_traits soit C++0x), je crois que Gabriel et Bjarne ont suffisamment de poids pour le faire passer. ça t'intéresse dans le cadre du calcul scientifique ? Est-ce que Gabriel a évoqué les SELL, et le pivot ?  

Reply

Marsh Posté le 15-07-2006 à 10:28:34    

Et la question des performances ?
 
Un code Java ou C# est il aussi performant qu'un code C ou C++ ? Cela compte pour de nombreux domaines d'application.

Reply

Marsh Posté le 15-07-2006 à 11:45:12    

franceso a écrit :

on est à peine en train de faire la transition Fortran->C++

Je ne sais as comment tu fais  [:wam] perso je n'aime pas le fortran, mais en ce qui concerne la disponibilité des librairies mathématiques par rapport au c++ il a encore des beaux jours devant lui je pense. Pendant ma these je dois m'en bouffer à mon grand regret, mais dès qu'il s'agit de commencer à chercher des librairies mathématiques puissantes en c/c++ je me rend compte que finalement je suis obligé de rester sur le fortran :/
 
Sinon c# ou c++ je me suis également posé la question, en effet de temps en temps j'essaies d'apprendre la prog en faisant des p'tites applications, et je me demandais quel langage serait adpté à mes besoins. J'ai d'abord testé le java, puis le c#, puis finalment je suis arrivé au c++ et je ne regrette pas. Apres tout dépend de ce que tu veux faire et si tu as besoin de puissant portabilité....

Reply

Marsh Posté le 15-07-2006 à 12:19:58    

question performance, dans le domaine du calcul scientifique le c++ comble ses lacunes (face au fortran) grace aux bibliotheques mathematiques comme blitz++, mais je ne sais pas ce que ca vaut reelement et comment ces 2 langages evolueront (pour fortran j'ai entendu parler de syntaxe permettant la parallelisation automatique)

Reply

Marsh Posté le 15-07-2006 à 14:01:05    

franceso a écrit :


De mon côté, ce qui m'intéresse c'est surtout les concepts, alors je ne devrais pas être déçu.


D intègre déjà tous les concepts qui seront proposés dans C++ 0xdeadbeef. :o

Citation :

Oui, mais pas de la à dire que c'est l'idéal.


Par rapport au fortran, en même temps...

Message cité 1 fois
Message édité par el muchacho le 15-07-2006 à 14:02:19

---------------
Les aéroports où il fait bon attendre, voila un topic qu'il est bien
Reply

Marsh Posté le 15-07-2006 à 20:42:23    

Dans sa version 2.0 le C# offre des Generics qui sont un copier-coller des templates C++ donc bon, avec ca la question ne se pose meme plus : C# rulz :o


---------------
Hobby eien /人◕ ‿‿ ◕人\
Reply

Marsh Posté le 16-07-2006 à 01:37:31    

Tamahome a écrit :

Dans sa version 2.0 le C# offre des Generics qui sont un copier-coller des templates C++


 
pas du tout non :o


---------------
brisez les rêves des gens, il en restera toujours quelque chose...  -- laissez moi troller sur discu !
Reply

Marsh Posté le 16-07-2006 à 20:56:36    

kadreg a écrit :

pas du tout non :o


 
bien sur que si :o


---------------
Hobby eien /人◕ ‿‿ ◕人\
Reply

Marsh Posté le 16-07-2006 à 20:58:49    

tu peux faire des mixin ? Passer des méthodes comme paramètre de template,  faire des paramètres par valeur ?


---------------
brisez les rêves des gens, il en restera toujours quelque chose...  -- laissez moi troller sur discu !
Reply

Marsh Posté le 17-07-2006 à 21:38:08    

el muchacho a écrit :

D intègre déjà tous les concepts qui seront proposés dans C++ 0xdeadbeef. :o


Pas les "concepts" justement !  
 

Citation :

Citation :

Oui, mais pas de la à dire que c'est l'idéal.


Par rapport au fortran, en même temps...


Il est fait pour, et il a des avantages que le C++ n'aura jamais -- parce que C++ se veut non spécialisé à un domaine.

Reply

Marsh Posté le 17-07-2006 à 21:46:03    

++fab a écrit :

Pas les "concepts" justement !  


Rien que le nom, ça sent encore le truc que les éditeurs de compilos vont mettre dix ans à implémenter correctement. Donc bon.
C'st con, parce que si la moitié des gens qui phosphorent sur la prochaine itération de C++ s'intéressaient à D, il y aurait p-ê déjà une norme et des compilos commerciaux pour ce langage, qui est semble-t'il nettement plus facile à implémenter correctement qu'un compilo C++ (surtout que le front-end est open source).
Enfin, ce que j'en dis...

Message cité 1 fois
Message édité par el muchacho le 17-07-2006 à 21:46:26

---------------
Les aéroports où il fait bon attendre, voila un topic qu'il est bien
Reply

Marsh Posté le 17-07-2006 à 22:04:46    

el muchacho a écrit :

Rien que le nom, ça sent encore le truc que les éditeurs de compilos vont mettre dix ans à implémenter correctement.


Je crois que ça a déjà été implémenté (au moins partiellement) par des contributeurs de GCC/g++.

Reply

Marsh Posté le 03-08-2006 à 13:59:31    

Désolé pour le déterrement de topic : j'étais en vacances et n'ai pas pu répondre plus tôt.
 

++fab a écrit :

J'aimerais bien aussi connaitre l'origine de cette apparition marginale -- si ce n'est pas "on essaye un projet C# voir ce que ça a dans le ventre".

D'après ce que j'en ai entendu dire, l'une des raisons est la recherche d'une plus grande portabilité : les gens qui utilisent C# au CEA semblent être des concepteurs de bibliothèques dont la portée se veut aussi large que possible.
 

++fab a écrit :

Citation :

De mon côté, ce qui m'intéresse c'est surtout les concepts, alors je ne devrais pas être déçu.


(Bien que type_traits soit C++0x), je crois que Gabriel et Bjarne ont suffisamment de poids pour le faire passer. ça t'intéresse dans le cadre du calcul scientifique ?

Oui, les concepts m'intéressent bien dans le cadre du calcul scientifique (ceci dit, je pourrais aussi parfaitement me débrouiller avec des traits).
Dans tous les cas, je ne pense à ça qu'en rêve : je resterai bloqué sur mon Fortran pendant encore quelques temps (espérons pas plus d'un an)
 

++fab a écrit :

Est-ce que Gabriel a évoqué les SELL, et le pivot ?

Il n'en a pas du tout parlé durant le séminaire. Il a simplement évoqué brièvement ce type d'outils à l'occasion de quelques questions qu'on lui a posées, mais ce n'était pas vraiment l'objectif de ce séminaire.
 

++fab a écrit :

Je crois que ça a déjà été implémenté (au moins partiellement) par des contributeurs de GCC/g++.


Je confirme : il y a deja des prototypes de compilateurs C++ qui implémentent les concepts (par exemple conceptg++). Il y a même déjà des gens qui utilisent ce type de compilateurs pour développer des bibliothèques (je pense notamment à un projet qui vise à reconstruire toute les structures de l'algèbre sous forme de concepts C++ pour pouvoir développer des algorithmes de calcul scientifiques complètement génériques de performance maximale)


---------------
TriScale innov
Reply

Marsh Posté le 14-08-2006 à 13:42:09    

franceso a écrit :

Désolé pour le déterrement de topic : j'étais en vacances et n'ai pas pu répondre plus tôt.


idem.
 

Citation :

D'après ce que j'en ai entendu dire, l'une des raisons est la recherche d'une plus grande portabilité : les gens qui utilisent C# au CEA semblent être des concepteurs de bibliothèques dont la portée se veut aussi large que possible.


la recherche d'une plus grande portabilité de quoi ?
 

Citation :

Je confirme : il y a deja des prototypes de compilateurs C++ qui implémentent les concepts (par exemple conceptg++).


Y a t'il une documentation des concepts qu'ils utilisent ?
J'ai l'impression que c'est encore la jungle de ce coté là : j'ai lu hier le dernier papier sur les concepts, c'était avec la syntaxe d'Indiana, avec des nouveaux mots clés, pas facile à suivre.

Reply

Marsh Posté le 15-08-2006 à 03:42:30    

Je suis en plein C#/C++. Les deux à la fois. La syntaxe se ressemble beaucoup.
 
Le même algorithme pour indexer des pages web pendant 1 minute:
C++: 13000 pages indexées.
C#: 800 pages indexées.
 
D'un autre côté, la durée de développement:
C++: 2 jours
C#: 1 jour
 
C# c'est donc bien pour faire du code jetable.
 
Edit: ah oui, j'oubliais, pour le nombre de pages indiquées ci-dessus, la consommation de mémoire est à peu près de:
C++: 150Mo (pour 121Mo de données)
C#: 100Mo (pour 10Mo de données)

Message cité 2 fois
Message édité par nargy le 15-08-2006 à 04:05:22
Reply

Marsh Posté le 15-08-2006 à 14:56:07    

nargy a écrit :

Je suis en plein C#/C++. Les deux à la fois. La syntaxe se ressemble beaucoup.
 
Le même algorithme pour indexer des pages web pendant 1 minute:
C++: 13000 pages indexées.
C#: 800 pages indexées.
 
D'un autre côté, la durée de développement:
C++: 2 jours
C#: 1 jour
 
C# c'est donc bien pour faire du code jetable.
 
Edit: ah oui, j'oubliais, pour le nombre de pages indiquées ci-dessus, la consommation de mémoire est à peu près de:
C++: 150Mo (pour 121Mo de données)
C#: 100Mo (pour 10Mo de données)


 
si ca a été codé avec les pieds aussi... moi je t'implémente le même algo en C++ et en C# et ho miracle le C# va 10000x plus vite et consomme 3 Go de moins en ram que la version C++ [:roane]


---------------
Hobby eien /人◕ ‿‿ ◕人\
Reply

Marsh Posté le 16-08-2006 à 09:54:23    

nargy a écrit :

Je suis en plein C#/C++. Les deux à la fois. La syntaxe se ressemble beaucoup.
 
Le même algorithme pour indexer des pages web pendant 1 minute:
C++: 13000 pages indexées.
C#: 800 pages indexées.
 
D'un autre côté, la durée de développement:
C++: 2 jours
C#: 1 jour
 
C# c'est donc bien pour faire du code jetable.
 
Edit: ah oui, j'oubliais, pour le nombre de pages indiquées ci-dessus, la consommation de mémoire est à peu près de:
C++: 150Mo (pour 121Mo de données)
C#: 100Mo (pour 10Mo de données)


lol t'es sur de ne pas avoir inversé là hein  :o parce qu'un code en c# qui boufferait moins de memoire que du cpp c'est pas courant...

Message cité 1 fois
Message édité par neg'gwada le 16-08-2006 à 13:31:40

---------------
--- WinSplit Revolution ---
Reply

Marsh Posté le 16-08-2006 à 10:02:36    

neg'gwada a écrit :

lol t'es sur de ne pas avoir inversé là hein  :o parce qu'un code en c# qui boufferait moins ce du cpp c'est pas courant...


 
Fig 2c : malcomprenant

Reply

Marsh Posté le 17-08-2006 à 09:49:50    

Faut arrêter d'halluciner les gens, essayez de faire un code portable avec C# !!!


---------------
Les ventes de véhicules neufs ont chuté de 7%, y'en a marre des pirates qui téléchargent illégalement des voitures sur internet !!
Reply

Marsh Posté le 17-08-2006 à 11:36:43    

magnifique la fin de ce topic....
- nargy qui nous fait part de sa méconnaissance totale de C# et qui semble coder comme les pieds, en plus de confondre C# et CIL, le tout ponctué par un magnifique "C# c'est bien pour faire du code jetable"
- turn3r qui, sur de lui et fier comme artaban, nous annonce gentiment qu'il n'est pas possible de faire du code portable en C#, et à qui j'ai bien envie d'envoyer mon explorateur de fichiers codé sous SharpDevelop en GTK# sous Windows, et qui fonctionne sans recompilation aucune sous linux.
un magnifique débat d'experts que nous avons là, digne des plus grands débats de 01 informatique !
 
bon maintenant, soit vous allez vous renseigner avant de poster, soit vous dégagez


---------------
J'ai un string dans l'array (Paris Hilton)
Reply

Marsh Posté le 17-08-2006 à 11:38:48    

ouais un peu de sérieux dans ce topic sivouplé !


---------------
Hobby eien /人◕ ‿‿ ◕人\
Reply

Marsh Posté le 18-08-2006 à 00:18:21    

Si!!!! Je code comme un pied en C#!!! Je suis débutant.
 
Enfin....... j'ai fait des progrès, j'ai découvert les templates (+5% sur une hash).
 
Ha oui, merci Harkonnen de donner l'explication du pourquoi et du comment: C# est portable au niveau binaire donc plus lent.

Reply

Marsh Posté le 18-08-2006 à 01:59:53    

nargy a écrit :

Si!!!! Je code comme un pied en C#!!! Je suis débutant.
 
Enfin....... j'ai fait des progrès, j'ai découvert les templates (+5% sur une hash).
 
Ha oui, merci Harkonnen de donner l'explication du pourquoi et du comment: C# est portable au niveau binaire donc plus lent.


Je suis désolé, mais on ne code pas en C# (ou Java, Python et consorts) comme on code en C++. Un algo très rapide en C++ peut effectivement être plus lent en C#, si on se contente de faire du "C#++". Je suis persuadé qu'avec un algo repensé, et non bêtement retranscrit, tu obtiendrais des performances toutes autres (parce qu'un rapport de 800/13000, désolé, mais ça fait quand même franchement gros)


---------------
J'ai un string dans l'array (Paris Hilton)
Reply

Marsh Posté le 18-08-2006 à 09:30:42    

mais clair quoi !


---------------
Hobby eien /人◕ ‿‿ ◕人\
Reply

Marsh Posté le 18-08-2006 à 09:53:21    

[:joey starr]

Reply

Marsh Posté le 18-08-2006 à 11:40:01    

[:kool shenn]


---------------
Hobby eien /人◕ ‿‿ ◕人\
Reply

Marsh Posté le 18-08-2006 à 22:46:15    

C++ sans hésiter, un language vieux, mais souple et optimisable a souhaite ! le C# est pour moi synonyme d'usine a gaz ...
 
Les projets de http://website.bluesourcesproject.info tu quasiment tous fait en C++

Reply

Marsh Posté le 18-08-2006 à 22:52:52    

drayell a écrit :

C++ sans hésiter, un language vieux, mais souple et optimisable a souhaite ! le C# est pour moi synonyme d'usine a gaz ...

 

Les projets de http://website.bluesourcesproject.info tu quasiment tous fait en C++

 

et ça, c'est synonyme de troll  :sweat:

Reply

Marsh Posté le 18-08-2006 à 23:17:56    

non mais franchement, fait un hello world en C#, look la taille en mémoire vive ...

Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed