Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
C# Vs VB.Net
Message
De
14/06/2004 14:53:38
Keith Payne
Technical Marketing Solutions
Floride, États-Unis
 
 
À
13/06/2004 17:36:48
Emmanuel Huybrechts
Technimeca International Corp.
Montréal, Québec, Canada
Information générale
Forum:
ASP.NET
Catégorie:
Autre
Titre:
Divers
Thread ID:
00912422
Message ID:
00913582
Vues:
18
>><snip>
>>>... One of the most interesting reader's comment is from James. He mentions that being case-sensitive is an advantage of C# compared to VB.NET because IL (.NET Intermediate Language) IS case-sensitive too.
>>
>>Marc,
>>
>>This person is attempting to mislead you. There is no correlation between the IL being case-sensitive and the language being case-sensitive. Unless you are writing your own compiler, there will never be a reason to write IL code by hand.
>
>No, actually, the case-sensitive issue is not so unimportant. Granted VB.NET do the automatic conversion between the casing you're using and the proper casing to call whatever class method. But, if someone write different methods with the same name but different casing (OK this is a rather bad practice) how the VB will react ?

If the method name is in the same namespace and scope, Intellisense will change the capitalization to match the existing method after the complete word as you type. If the base method is not marked as Overridable, then Intellisense will put squigglies underneath the method name and inform the developer that the code will not compile as-is.


>
>(As a digression, I don't like that much case-sensitiveness, it can lead to a lot of unecessary errors due to mistyping).
>
>>
>>>
>>>IMHO, VB.NET should only choosen by those who have only programmed in VB. All the others should choose C# as it is more integrated with .NET (it seems that a lot of .NET classes are programmed in C#).
>>
>>This is misleading also. There is no relationship between the language that the framework classes were written in and the language you use to write code. You will never see or work with the source code of the .NET framework and the interface of the framework classes is identical, no matter which language you are using.
>>
>
>Of course, .NET works well with any language written for it but the advantage I perceive with the fact that much of .NET is written in C# is that C# will always be the no.1 language of .NET. That is, bleeding edge features always coming from new C# features (generics, C omega, etc.)

Both languages have great new features slated for the next release of .NET. Most of the new features for VB.NET are programmer/dev team productivity enhancements while most of the new C# features are expansions of the language elements. Microsoft has not given any indication that it favors one language over the other - yet.

>
>>With the information that Microsoft has released about the next version of .NET, it is clear that VB.NET is being steered towards maximum productivity and C# is leaning towards raw power. The beauty of .NET is that you don't have to permanently choose one language over the other. Work with both of them, see which one that you like the best. Then use that language for most of your projects.
>
>Yes, the language used is not that important. But... for some reasons good or bad, VB programmers never had the same respect than their C/C++/Java pairs. Thus C# could be a more lucrative choice even for former VB6 developers.

This is true, and the employer demand for the respective languages is an important issue that cannot be dismissed. A search on Monster shows much more demand for C# programmers than VB.NET.

Concerning the amount of respect from fellow programmers, the old perceptions of VB programmers was well deserved. VB had always been a language that allowed incompetent programmers to string together spaghetti code that actually worked, but probably used 500% more resources than neccessary. Of course, this does not apply to all VB programmers, but many of them.

However, VB.NET does not suffer from the same problems that VB did. You cannot write non-OO code in VB.NET. Microsoft expected most of the VB programmers to flock to VB.NET, but it turned out that many of them were not prepared to write better code. As time goes by and more programmers understand .NET, the line will be drawn between .NET and non-.NET programmers instead of between "real" programmers and VB hacks.

When you analyze the distinctions between C++, C#, Java, and VB.NET, you realize that both C# and VB.NET pale in comparison to C++. C#, Java, and VB.NET are all in the same bag, so to speak.

>
>Add to all that discussion that C# is an ECMA standard. That mean that you can use C# on other platforms (Linux and the Mono project for example, there is also a VB compiler for Mono but it does seem not yet complete nor identical to VB.net).

This is a valid reason too.

>
>For all these reasons, I think C# has an edge over VB. But of course, there's nothing wrong with choosing VB over C# as the way to build programs in these two languages is very similar and should you need to switch to C# it would be very easy.

For two of the reasons I agree with you. I wanted to make sure that no one made a decision based on inaccurate information.
Précédent
Répondre
Fil
Voir

Click here to load this message in the networking platform