| | |
Which of the .NET Framework Languages Is Best?
Please support our ASP.NET advertiser: Intel Parallel Studio Home
![]() |
Perhaps this is best not posted in the VB.NET subforum
I'm moving it to the general .NET Framework forum so people have a chance to give an impartial opinion
I'm moving it to the general .NET Framework forum so people have a chance to give an impartial opinion
C# is my favorite, it's got a nice clean syntax. Easy to learn, easy to implement. VB (in any form) makes me shudder. C++ managed...why(you could just use C#
)?! That's my oppinion.
)?! That's my oppinion. •
•
Join Date: Jan 2005
Posts: 2
Reputation:
Solved Threads: 0
One trouble of forums is that you don't necessarily get a representative cross-section of respondents, nor are people always qualified to comment.
VB.Net, for example, doesn't have the 'lots of files' issue described above, since multiple classes can be included in one file now. Not sure its better for that, but that's a different argument.
Badly written code is badly in any language. C++ is good for some serious shockers, just as a 6-month 'young' programmer can churn out reams of VB that is harder to debug than Fortran.
In general, there has been a major convergence of all the languages with .Net. The trad 3GL languages of the C++ variety have gained most of the Gui-based auto-formatting slickness of VB, while VB has gained some the missing structural features such as class inheritance and lost some usability as well.
The differences that remain are subtle: C# are targetted at the 'serious' developer, those wanting power over ease of development. It retains much of the declarative syntax issues that C begat, VB is intended as the high-productivity, easy-to-learn tool; it has been cleaned up a fair bit but a few idiosyncrasies remain. Managed C++ is legacy.
I have written in just about everything over the years, and like VB for its simple syntax and productivity features - some which are only now returning in VB 2005 having been snatched away in eariler .Net versions. But I am rare among the ex-'do it in assembler and we can save 50 machine cycles' brigade.
Quite honestly, it doesn't matter too much. Don't get bogged down in fashion statements. Good code is by design, not by compiler. And programming is a job - so bear in mind the market demand for your chosen language.
C# is the language most people recommend, but give me a language with edit-in-the-debugger and super-quick compile times any day :cheesy:
VB.Net, for example, doesn't have the 'lots of files' issue described above, since multiple classes can be included in one file now. Not sure its better for that, but that's a different argument.
Badly written code is badly in any language. C++ is good for some serious shockers, just as a 6-month 'young' programmer can churn out reams of VB that is harder to debug than Fortran.
In general, there has been a major convergence of all the languages with .Net. The trad 3GL languages of the C++ variety have gained most of the Gui-based auto-formatting slickness of VB, while VB has gained some the missing structural features such as class inheritance and lost some usability as well.
The differences that remain are subtle: C# are targetted at the 'serious' developer, those wanting power over ease of development. It retains much of the declarative syntax issues that C begat, VB is intended as the high-productivity, easy-to-learn tool; it has been cleaned up a fair bit but a few idiosyncrasies remain. Managed C++ is legacy.
I have written in just about everything over the years, and like VB for its simple syntax and productivity features - some which are only now returning in VB 2005 having been snatched away in eariler .Net versions. But I am rare among the ex-'do it in assembler and we can save 50 machine cycles' brigade.
Quite honestly, it doesn't matter too much. Don't get bogged down in fashion statements. Good code is by design, not by compiler. And programming is a job - so bear in mind the market demand for your chosen language.
C# is the language most people recommend, but give me a language with edit-in-the-debugger and super-quick compile times any day :cheesy:
•
•
Join Date: Jan 2005
Posts: 33
Reputation:
Solved Threads: 0
Well just a couple of things.
C# is a very nice language for .NET mainly becuase it was designed for .NET. Kind of like for .NET by .NET sorry stupid cliche. Anyway I use C# and like it there are some performance gains over VB.NET but if you write good enough code in VB.NET a person is never going to tell.
VB.NET has come a long way scince VB 6 it now has full OOP programability, but VB.NET was kind of formed to .NET instead of created for .NET, if that makes sense. So there are going to be some issues with that.
In and overall sense there are like 26 languages I think that are ported to the CLR. So that basicallly means you can use almost any language using the .NET Framework and not get lost in code at all. This is mainly due to they are all using the same Namespaces and BCL so in a way it really doesn't matter what you use. I know this was probably a little confusing hope it helped though.
C# is a very nice language for .NET mainly becuase it was designed for .NET. Kind of like for .NET by .NET sorry stupid cliche. Anyway I use C# and like it there are some performance gains over VB.NET but if you write good enough code in VB.NET a person is never going to tell.
VB.NET has come a long way scince VB 6 it now has full OOP programability, but VB.NET was kind of formed to .NET instead of created for .NET, if that makes sense. So there are going to be some issues with that.
In and overall sense there are like 26 languages I think that are ported to the CLR. So that basicallly means you can use almost any language using the .NET Framework and not get lost in code at all. This is mainly due to they are all using the same Namespaces and BCL so in a way it really doesn't matter what you use. I know this was probably a little confusing hope it helped though.
•
•
Join Date: Jan 2005
Posts: 1
Reputation:
Solved Threads: 0
Hello all,
Just thought I would add my 2 cents.
I am a trainer for quite a few tech schools. I teach both VB.Net
as well as C#. I have trained alot of people from varying backgrounds
since .Net was in beta and have yet to find a "true" advantage to iether language. The main thing to be aware of is your own comfort level. If you
come from a VB background you will of course be more efficient with VB.Net.
The whole purpose of the Framework is not to make each language different
but just the opposite. To make them equal. In terms of performance there is no clear advantage due to all languages being compiled to MSIL. Each revision of the framework should bring each language closer together in terms of features. For example the 2005 upgrade for VB.Net adds some of the features previously available only in C# such as XML comments, etc...
Even things that vb does not directly currently support the C# does such as opperator overloading can be done using methods in place of operators.
In the end they are all getting compiled to the same code. There are slight differences here and there in the way they compile to MSIL such as VB and C# If statements compile to different MSIL code (Jump table versus an if Statement) but small things like that are being ironed out with each revision.
I have to agree with the post above that states the quality of your code is what will make the biggest impact. Also your knowledge of the framework and the Class Library. A big part of efficiency in the framework is not reinventing the wheel but using the built in types where appropriate. C# may give me more direct controll over some of the smaller details but in VB i can get it done faster. The trade off is purely a matter of perspective. Go with what you want, or are more comfortable with. No matter what language you use the objects and technologies (ado.net, asp.net, GDI+) work universally.
Well i think I have rambled too much. Thanks for your patience.
James Waymire
Just thought I would add my 2 cents.
I am a trainer for quite a few tech schools. I teach both VB.Net
as well as C#. I have trained alot of people from varying backgrounds
since .Net was in beta and have yet to find a "true" advantage to iether language. The main thing to be aware of is your own comfort level. If you
come from a VB background you will of course be more efficient with VB.Net.
The whole purpose of the Framework is not to make each language different
but just the opposite. To make them equal. In terms of performance there is no clear advantage due to all languages being compiled to MSIL. Each revision of the framework should bring each language closer together in terms of features. For example the 2005 upgrade for VB.Net adds some of the features previously available only in C# such as XML comments, etc...
Even things that vb does not directly currently support the C# does such as opperator overloading can be done using methods in place of operators.
In the end they are all getting compiled to the same code. There are slight differences here and there in the way they compile to MSIL such as VB and C# If statements compile to different MSIL code (Jump table versus an if Statement) but small things like that are being ironed out with each revision.
I have to agree with the post above that states the quality of your code is what will make the biggest impact. Also your knowledge of the framework and the Class Library. A big part of efficiency in the framework is not reinventing the wheel but using the built in types where appropriate. C# may give me more direct controll over some of the smaller details but in VB i can get it done faster. The trade off is purely a matter of perspective. Go with what you want, or are more comfortable with. No matter what language you use the objects and technologies (ado.net, asp.net, GDI+) work universally.
Well i think I have rambled too much. Thanks for your patience.
James Waymire
![]() |
Similar Threads
- Questions about the .net framework and c++ (C++)
- What is .NET framework? (ASP.NET)
- Do I need .net framework just for windows 98 hotmail and messenger?? (Windows 95 / 98 / Me)
Other Threads in the ASP.NET Forum
- Previous Thread: Some controls not working with IE
- Next Thread: looking for downloading asp.net/sqql2000 erp software
| Thread Tools | Search this Thread |
.net activexcontrol advice ajax alltypeofvideos appliances asp asp.net bc30451 beginner bottomasp.net box browser button c# c#gridviewcolumn cac checkbox click commonfunctions compatible confirmationcodegeneration content courier css dataaccesslayer database datagridview datagridviewcheckbox datalist deadlock development dgv dialog dropdownlist dynamically edit fileuploader fill flash formatdecimal forms formview gridview gudi homeedition iframe iis javascript jquery listbox microsoft mono mouse mssql multistepregistration news numerical objects opera panelmasterpagebuttoncontrols radio redirect registration relationaldatabases reportemail rotatepage save schoolproject search security sessionvariables silverlight smartcard smoobjects software sql-server sqlserver2005 suse textbox tracking treeview unauthorized validatedate validation vb.net video videos virtualdirectory vista visual-studio visualstudio web webapplications webdevelopemnt webprogramming webservice xml xsl youareanotmemberofthedebuggerusers






