Vb.net vs C#: quel language pour débuter?

Bonjour à tous,

je souhaite me mettre à la programmation et j’hésite entre le VB.net et C#.

je n’ai pratiquement aucune expérience en programmation , j’ai lu des trucs a droite a gauche et j’ai bidouillé sous visual basic 2005 exp edition et la même version pour le c#, alors avant de m’avanturer plus loin j’aimerais votre avis sur un choix de language.

d’après ce que j’ai lu , le vb.net ne sert que de transition du VB6 au C#, est ce vrai??

Dans ce cas je n’aurais qu’a m’attaquer directement au c#, sinon je pense le VB.net est plus abordable pour un débutant.

quelles sont les différences entre ces languages? :neutre:

merci d’avance.

Les deux ont des avantages et des inconvénients, si tu projette de te mettre à c++ ou à java dans le futur, n’hesites pas, prend C#.

Après au niveux syntaxe, si tu est avec visual studio tu n’aura pas de souci, l’ide aide trés bien le développeur.

Ensuite quelques carences:
en C#: pas de parametres par défaut (grrr)
par exemple void fonction(int a=0){} ne fonctionne pas…

en VB: pas d’instruction break (pour casser une boucle)
pas de gestion des évènements intégrée à visual studio (nécessité de placer les handles…)

Ensuite au niveau de l’indentation je prefere les accolades du C# aux End de VB.
La déclaration des variables est plus aisée aussi:

c#: int a=3;
VB: dim a as integer=3

Ensuite VB est pas assez strict dans la syntaxe au niveau du compilateur, d’ou des erreurs à l’execution plutot qu’a la compilation

[quote=popolof,28/06/2006, 13:43:12]
Les deux ont des avantages et des inconvénients, si tu projette de te mettre à c++ ou à java dans le futur, n’hesites pas, prend C#.

je pensais que le C# était une évolution du c++, le c# ne serait qu"une version light du c++??? :sweet:

Personellement je trouve: plus de parametre par défaut, plus de pointeurs, plus de gestion mémoire, plus d’héritages multiples, plus de template (quoique revenu recemment). Le langage se retrouve trés proche du java.

De ce fait c’est moins rapide mais plus fiable que le c++. “L’évolution” dont tu parles c’est surtout dans la facilité de développement (langage de plus haut niveau) plutot que dans les possibilités offertes.

Il faut remarquer que les choses retirées étaient source de bugs (gestion mémoire/pointeurs etc)

le C# est un langage propriétaire qui appartient à Microsoft. Il a sûrement des points communs avec le C++, mais n’est pas vraiment une “évolution”…
Plus d’infos:
C#
VBNET (appartient à M$ aussi)

Langage propriétaire qui dispose d’une implémentation libre via Mono.

Exit For, Exit While, Exit Do, selon le cas

T’as un exemple parce que ça m’intéresse

Les deux languages n’ont rien à voir. Pas la même fonction, pas le même environnement, pas la même syntaxe.

Ce que je ne comprends pas avec le c# , c’est l’interet de sa complexité face au VB.net alors qu’il sont pratiquement tous les deux aussi puissant, pourquoi tant d’angoument pour le C#?

dans l’esprit des gens le vb.net, c’est pour les noob :wink: , la communauté est plus restrinte que celle du C#
est ce parce que le C# fait plus professionnel? ça doit faire mieux sur le CV :ane:

Avec le C#, suis je limiter à faire du windowsforms?? j’aimerais par la suite essayer de développer des petits jeux, devrais je passer obligatoirement au C++? (si non, pouvez vous me donner l’exemple de quelques en C#, pour que je puisse les disséquer? )

Merci d’avance.

Pour les jeux, tu peux utiliser DirectX avec du code managé et niveau perf, tu n’auras, en théorie, aucune perte.
Concernant le C# et VB .NET, tu pourras lire ceci.

Je crois que je vais me tourner vers le C#, tous d’abord par ce que j’ai entre les mains le bouquin "Visual C#, etape par etape " mais je sais pas si c’est le meilleur , sinon quel livre me conseillez vous pour débuter?

De plus la communauté étant plus grande, je trouverais plus facilement de l’aide (code source, forum…).

allez hop, je m’y mets!!! :hello:

Bonjour,

Si tu debute totalement la prog, je pense que c’est une erreur de commencer par le C [#+]* …
Tu vas bien vite abandonner… C’est vraiment complexe pour commencer.
Enfin je te parle de mon expérience. Je ne maitrise pas le C, pourtant je m’y suis attaqué à maintes reprises…
Le Basic (dépassé maintenant) ou plutôt Python serait idéal pour commencer.
Apres fait comme tu veux, mais si jamais tu abandonne, essaie de voir python !!!

Bon courage !

(Python = Libre + portable)

C# est quand même assez simple d’utilisation, au même titre que le Java.
Le C/C++, c’est par contre autre chose.

Ah ? Ne m’étant jamais interréssé au Java, je croyais que c’était à peu près comme le C… :stuck_out_tongue:

Oui mais avec beaucoup moins de contraintes genre la mémoire, les pointeurs, de nombreuses lib natives facilitent grandement le travail, aspect object assez simple à comprendre mais assez puissant pour qui veut aller aux tréfonds de l’OO.
C’est par contre mou et lent et l’aspect IHM (les widgets) sont bof pour moi (je lui préfere QT et donc le C++ voire GTK donc le C).

Ok, merci des précisions :slight_smile:

Arg comparer C++ et C# XD.

C# utilise la technologie .net c’est pas comparable : ça fonctionne comme JAVA tu as des class déjà construire dans le framework .net !

Seul inconvénient c’est que ces class faut les installer pour que ton programme tourne :s java comme C# ou VB.net

Ensuite comme l’a dit karlkox .net a été porter sous les OS libre avec mono …

La puissance de C++ qui ne propose à peine qu’une notion de POO et C# qui est fondé là dessus est pas comparable…

Donc tout els anti Microsoft qui l’ecrive M$ au passage je trouve ça … (no comment) te diront que bouuhhh c’est nul mais faut arrêter d’être extremiste quand ils font une merde vous critiquez mais quand y font quelquechose de super faut le dire aussi et pas rester bloqué !

Bonne continuation à tous :wink:

Salut,
à mon avis mets toi au C# :
-commencer par le C/C++ est trop compliqué pour un débutant, tu vas t’arracher les cheveux, tu vas vite abandonner (meme avec une grande motivation) donc je déconseille cela pour commencer.(en plus ça va te donner une mauvaise image de la programmation).
-Le VB.net est effectivement un langage très simple. J’ai moi meme commencé avec VB6 mais je regrette : en effet c’est un langage tellement simple qu’il est très difficile ensuite de passer à un autre langage tel que C++.

-Donc commence par le C# : c’est un langage de difficulté moyenne, avec beaucoup de possibilités, et ce sera ensuite facile de passer aux autres langages tels que C++, et meme php pour le web.

Voila je m y connais en C et je voulai savoir si c’est dur de passé au C# avec “visual C#”
mErci

Je part du principe qu’à partir du moment où l’on maitrise un langage, en apprendre d’autres n’est qu’une formalité, j’exclu certains langages comme l’asm mais en général, ça ne pose pas plus de problème que cela, le C# en fait partis.