Đọc trên mạng thấy có 1 bài ý kiến cũng hay hay nên post lên cho các bác đọc. Không có ý nghĩa tranh luận gì ở đây cả nhé, chỉ mang tính tham khảo thôi.
Các bác nào thích thì chịu khó đọc bằng tiếng Anh vậy mình không dám dịch ra tiếng Việt
Opinion: Why C# Is Not a "Better" Language Than VB.NET
"People who talk that way about VB.NET are confusing three issues," says Michael Stiefel
By: Michael Stiefel
When the speakers on the .NET track of SYS-CON's Web Services Edge 2005 East conference got together, Carl Franklin and I were talking about why people think that C# is the "official language" for .NET.
I told Carl that, even though most of my consulting is in C#, I think that attitude is wrong. I believe it is important to elaborate why I feel this way.
People who feel that VB.NET is an inferior language to C#, or that somehow C# is a "better language", or the "official language" for accessing the .NET Framework Class Library are just plain wrong. My personal opinion is that I prefer C# to VB.NET because I like the compact syntax among other things, but that is a personal judgement.
People who talk that way about VB.NET are confusing three issues.
First, suitability to access the Framework Class Library (FCL). Every example in my book Application Development Using C# and .NET has been translated into VB.NET and works exactly the same way. I have used the same courseware for both C# training and VB.NET training with the only difference that the examples were in the different languages. From the point of view of the FCL, everything C# can do, VB.NET can do as well.
Second issue: suitability to a given task. Equality before the FCL, or the Common Language Runtime is not everything. Perl.NET can do things that C# cannot. Does that make Perl.NET a better language than C#? No. It just makes it a better choice in some cases. If you need to use unsafe mode, you need C#. You cannot overload operators in VB.NET. You might find VB.NET's late binding feature more convenient than using the reflection API in C#. You might like background compilation in VB.NET. It is is possible, that for certain features the IL that C# generates is more efficient than the IL that VB.NET does. I do not know if this is true, but even if it is, it probably does not matter for most applications. After all, in some performance situations managed C++ is better than C#. For people interested in the differences between the languages look at O'Reilly's C# and VB.NET Conversion pocket reference.
Finally: de gustibus non disputandum est, there are matters of personal preference. I like C#'s compactness. I think it has certain advantages, but that is a matter of taste. Taste is important even in technical matters, but do not confuse taste with other factors, or mistake taste for intuition.
I wish VB.NET programmers a long and productive life. VB.NET programmers should not feel inferior.
Link: http://dotnet.sys-con.com/read/49040.htm
Các bác nào thích thì chịu khó đọc bằng tiếng Anh vậy mình không dám dịch ra tiếng Việt
Opinion: Why C# Is Not a "Better" Language Than VB.NET
"People who talk that way about VB.NET are confusing three issues," says Michael Stiefel
By: Michael Stiefel
When the speakers on the .NET track of SYS-CON's Web Services Edge 2005 East conference got together, Carl Franklin and I were talking about why people think that C# is the "official language" for .NET.
I told Carl that, even though most of my consulting is in C#, I think that attitude is wrong. I believe it is important to elaborate why I feel this way.
People who feel that VB.NET is an inferior language to C#, or that somehow C# is a "better language", or the "official language" for accessing the .NET Framework Class Library are just plain wrong. My personal opinion is that I prefer C# to VB.NET because I like the compact syntax among other things, but that is a personal judgement.
People who talk that way about VB.NET are confusing three issues.
First, suitability to access the Framework Class Library (FCL). Every example in my book Application Development Using C# and .NET has been translated into VB.NET and works exactly the same way. I have used the same courseware for both C# training and VB.NET training with the only difference that the examples were in the different languages. From the point of view of the FCL, everything C# can do, VB.NET can do as well.
Second issue: suitability to a given task. Equality before the FCL, or the Common Language Runtime is not everything. Perl.NET can do things that C# cannot. Does that make Perl.NET a better language than C#? No. It just makes it a better choice in some cases. If you need to use unsafe mode, you need C#. You cannot overload operators in VB.NET. You might find VB.NET's late binding feature more convenient than using the reflection API in C#. You might like background compilation in VB.NET. It is is possible, that for certain features the IL that C# generates is more efficient than the IL that VB.NET does. I do not know if this is true, but even if it is, it probably does not matter for most applications. After all, in some performance situations managed C++ is better than C#. For people interested in the differences between the languages look at O'Reilly's C# and VB.NET Conversion pocket reference.
Finally: de gustibus non disputandum est, there are matters of personal preference. I like C#'s compactness. I think it has certain advantages, but that is a matter of taste. Taste is important even in technical matters, but do not confuse taste with other factors, or mistake taste for intuition.
I wish VB.NET programmers a long and productive life. VB.NET programmers should not feel inferior.
Link: http://dotnet.sys-con.com/read/49040.htm