Statut de C#

Fermé
eolim Messages postés 97 Date d'inscription samedi 22 février 2003 Statut Membre Dernière intervention 20 juillet 2005 - 23 févr. 2003 à 22:06
eolim Messages postés 97 Date d'inscription samedi 22 février 2003 Statut Membre Dernière intervention 20 juillet 2005 - 3 mars 2003 à 19:54
Salut tout le monde,

C# est un nouveau langage du pack Visual Studio .Net développé par Microsoft. Ce langage est décrit comme une évolution du C++ comme celle qui a conduit du passage du C au C++ (tiré d'un livre édité par Microsoft Press). Comme il a été développé par Microsoft, ce langage est donc propriétaire. Cependant, j'ai aussi lu que Microsoft souhaitait que le C# soit normalisé par un organismme indépendant. Comme je l'ai compris, ça fait penser à ANSI pour le langage C. Ca veut dire que C# deviendrait libre ?

Si vous avez des informations sur ce sujet, je les lirais avec attention.
Merci d'avance.
A plus,
eolim...

6 réponses

sebsauvage Messages postés 32893 Date d'inscription mercredi 29 août 2001 Statut Modérateur Dernière intervention 21 octobre 2019 15 655
24 févr. 2003 à 09:53
Alors:

1) ATTENTION: C# n'est pas DU TOUT une évolution du C++ !
C'est un langage différent. Il se comporte de façon totalement différente (héritage, allocation mémoire, typage...). Seule la syntaxe et le nom ressemblent à ceux du C++.
Dire que c'est une évolution du C++ est un mensonge éhonté de la part de Microsoft.

2) Pour préciser:
C/C++:
- ils sont normalisés
- personne n'est "propriétaire" du C/C++.
- Il existe des compilateurs de sources différentes (opensource et commerciaux).
- Ces compilateurs existent sur des tas de plateformes différentes (Windows, Linux, AIX, HPUX, MacOS...)

Le C#:
- est la propriété exclusive de Microsoft.
- il n'existe très peu de compilateurs (Microsoft, Borland, et un vague compilateur sous Linux).
- C# ne peut fonctionner que sous Windows 2000/XP.
- Microsoft a déposé C# et peut donc faire interdire quand il veut les compilateurs concurrents.

Le C# ne deviendra pas opensource pour la simple raison que Microsoft a récemment déposé le C# et .Net.

Demander une normalisation n'est qu'un coup d'esbrouffe. Ils n'ont nullement l'intention de rendre ce langage libre.
0
sebsauvage Messages postés 32893 Date d'inscription mercredi 29 août 2001 Statut Modérateur Dernière intervention 21 octobre 2019 15 655
24 févr. 2003 à 10:31
Tant que j'y suis, pense à jeter un coup d'oeil du côté de Python.
http://www.intelligententerprise.com/cgi-bin/printable.cgi?file=../030301/604e_business1_1.shtml
http://python.org

Ce langage est dans la veine de C#/Java (langages à machines virtuelles), mais contrairement C#/.Net, il n'est pas né de la dernière pluie et il a été très bien pensé.

En ce qui me concerne, je trouve que c'est une excellente alternative à C#. Non seulement opensource, mais en plus réllement multiplateformes.
0
euh je ne voudrais pas dire de betise mais il n'existe pas un framework pou les windows9x qui fait marcher .net?

Je dirais que c# est une amelioration de java ou en tout cas en essai de microsoft de reprendre des part de marcher du secteur Java, observer un code c# et java on voi desuite que les codeurs java ne seront pas depayser a passer a c# si ils le veulent et la ressemblence va jusq'au API!!! Ou comment faire du neuf avec du vieux!!!
0
sebsauvage Messages postés 32893 Date d'inscription mercredi 29 août 2001 Statut Modérateur Dernière intervention 21 octobre 2019 15 655
24 févr. 2003 à 12:11
euh je ne voudrais pas dire de betise mais il n'existe pas un framework pou les windows9x qui fait marcher .net?
Oui ça c'est la théorie.
Mais chez nous l'expert consultant Microsoft nous fortement recommandé de ne pas faire ça (avec une grimace).

Je dirais que c# est une amelioration de java ou en tout cas en essai de microsoft de reprendre des part de marcher du secteur Java, observer un code c# et java on voi desuite que les codeurs java ne seront pas depayser a passer a c# si ils le veulent et la ressemblence va jusq'au API!!! Ou comment faire du neuf avec du vieux!!!
C'est clair, c'est un gros concurrent de Java.
Il y a d'excellentes choses dans .Net, mais de là à dire que c'est une amélioration par rapport à Java, je ne serais pas aussi catégorique.

Par exemple Microsoft a ajouté certaines fonctionnalités rien que pour pouvoir dire "Java ne sait pas faire ça !".
Je trouve que c'est une très mauvaise façon de procéder.
Il ne faut ajouter les fonctionnalités que quand c'est utile, pas juste pour jouer à ce jeu infantile.

Enfin bon...

Si j'aime autant Python, c'est que le langage n'évolue pas sur les décisions arbitraires d'une société unique (comme Microsoft pour .Net, ou Sun pour Java), mais par les utilisateurs du langage eux-mêmes. :-)
0
eolim Messages postés 97 Date d'inscription samedi 22 février 2003 Statut Membre Dernière intervention 20 juillet 2005 2
27 févr. 2003 à 20:11
Bonjour tout le monde,

Quand j'ai amorcé cette discussion, je souhaitais seulement avoir quelques points de vue et quelques explications supplémentaires. Ma seule source d'information était les fameux livres édités par Microsoft Press. Je voulais avoir d'autres sources d'information que celles de Microsoft...

Note : je n'ai pour le moment pas l'intention de me mettre au C#. J'ai commencé le C++ et je crois que je vais y passer pas mal de temps... ;-)

J'ai bondir sebsauvage quand j'ai repris une idée que j'avais lu : C# est une évolution de C++. Voici, de mémoire, quelques arguments avancés par l'auteur. Ce langage est entièrement objet contrairement au C++ et que programmer objet facilite la maintenance, la réutilisation du code, etc... (normalement c'est vrai quelque soit le langage objet, mais ça dépend surtout de la personne qui a écrit le code...) A ce qui paraît, avec C# les pointeurs sont plus simples à utiliser, les allocations mémoire sont différents de celle du C et du C++ : je me souviens seulement qu'il a un mécanisme de "ramasse-miettes" pour récupérer la mémoire désallouée.
Il y avait aussi le fameux argument relatif à Java. L'auteur mettait en avant que le C# devait permettre de programmer avec la puissance du C++ et la facilité de Java.

Enfin, comme je l'avais compris, j'avais l'impression que Microsoft avait l'ambition d'élever le C# au même rang que le C et le C++ en le confiant à un organisme indépendant. D'un autre côté, comme c'est un langage écrit pour Windows et que Microsoft est la seule a posséder le code source de ce sytème d'exploitation, l'indépendance de ce fameux comité n'est peut-être qu'illusoire. Aujourd'hui, je ne connais pas du tout la politique de Microsoft sur C# d'où cette fameuse question.

Je vous remercie pour ces premières informations
A plus
eolim...
0
sebsauvage Messages postés 32893 Date d'inscription mercredi 29 août 2001 Statut Modérateur Dernière intervention 21 octobre 2019 15 655 > eolim Messages postés 97 Date d'inscription samedi 22 février 2003 Statut Membre Dernière intervention 20 juillet 2005
28 févr. 2003 à 09:22
Beaucoup de personnes ont tendance à penser C --> C++ --> C#. Mais c'est à mon avis fondamentalement faux.

C/C++ ne sont la propriété exclusive de personne.

ça m'étonnerais que Microsoft fasse normaliser le langage par le comité ANSI: ils viennent même de déposer un brevet pour s'assurer d'être les uniques propriétaires de la technologie !

On ne peut pas avoir à la fois le beurre et l'argent du beurre.


La technologie de ramasse-miette n'est pas unique à C#, mais commune à tout le framework .Net (ASP.Net, VB.Net...) . Cette technologie existe déjà dans Java (qui a une syntaxe proche du C++ aussi !) et dans Python.

Microsoft s'est juste contenté de prendre une syntaxe proche du C++ pour créer un langage qui n'a rien avoir avec le C++.
C'est encore plus gonflé de l'appeler C#.
Mais Microsoft n'en est pas à sa première récupération...

Mais dire que C# est une évolution du C++ n'est pas totalement faux: Java est aussi une évolution du C++, et Python également.

Plus généralement, la majorité des langages récents fonctionnent à base de machine virtuelles. En faisant ainsi abstraction du matériel, on rend les langages multiplateformes (Java, Python...).

Mais Microsoft n'a vraiment rien compris: Ils veulent faire un langage de plus haut niveau, mais dans le même temps ils rendent .Net et C## fortement dépendant de l'OS et du matériel (.Net n'existe que sous Windows pour des processeurs de type Intel). C'est idiot.

Personnellement, je préfère choisir des technologie qui me rendent moins dépendant du matériel et des OS.

.Net a raté ce coche là.
Et encore plus stupide ils tentent de renforcer cette position mono-OS/mono-processeur.
Dommage, il y avait de bonnes choses dedans...
0
eolim Messages postés 97 Date d'inscription samedi 22 février 2003 Statut Membre Dernière intervention 20 juillet 2005 2
1 mars 2003 à 13:56
Bonjour sebsauvage,

Je ne vais qu'appuyer ce que tu as dis, même si j'ai encore quelques questions....

Le fait d'avoir choisi le nom de C# est d'un point de vue commercial une très bonne idée. Les performances du C et du C++ ne sont plus à démonter. Si environ 90% du noyau de Linux est codé en C, ce n'est pas pour rien. C'est une bonne technique pour essayer de récupérer des gens qui ont des connaissances en C et en C++ ou tout simplement ceux qui connaissent seulement ces langages de nom.

Pour en revenir à la portabilité. Même si Linux a pris quelques parts de marché, Windows reste le système d'exploitation le plus répandu et le plus utilisé. Pour cela, la portabilité doit être le cadet des soucis de Microsoft. Même les personnes qui utilisent un système libre doivent avoir Windows sur leur machine. Pour les serveurs, il y a aussi des produits Microsoft. ll est donc possible de n'avoir que des produits Microsoft à tous les niveaux : il n'y a plus de problème de portablité.

Par contre, tu disais qu'il avait de bonnes choses dans la technologie .NET. Quelles sont-elles ?

Connaitrais-tu un site (excepté celui de Microsoft...) sur le C# pour avoir des informations complémentaires ?

A plus,
eolim...
0

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

Posez votre question
sebsauvage Messages postés 32893 Date d'inscription mercredi 29 août 2001 Statut Modérateur Dernière intervention 21 octobre 2019 15 655
3 mars 2003 à 09:25
Windows reste le système d'exploitation le plus répandu et le plus utilisé
Au niveau postes de travail oui, mais ça n'est pas forcément vrai au niveau des serveurs. Mais la part de Microsoft ne fait que progresser.

Par contre, tu disais qu'il avait de bonnes choses dans la technologie .NET. Quelles sont-elles ?
J'avais écris un petit couplet là dessus pendant ma formation... attend je le retrouve... voilà:
http://www.commentcamarche.net/forum/affich.php3?cat=3&ID=180259&page=4

Voir aussi:
http://www.commentcamarche.net/forum/affich.php3?cat=3&ID=216243&page=1
0
eolim Messages postés 97 Date d'inscription samedi 22 février 2003 Statut Membre Dernière intervention 20 juillet 2005 2
3 mars 2003 à 19:54
Salut websauvage,

Merci pour les adresses, je vais lire ça avec attention.

A plus pour en reparler...
eolim...
0