Talk:Comparison of C sharp and Visual Basic .NET
From Wikipedia, the free encyclopedia
Contents |
[edit] This page is poorly written
This page is horrible, and is very POV. It should be tagged for a complete rewrite. 65.161.188.11 18:50, 23 April 2007 (UTC)
I second that. This is nowhere on par of a dictionary entry. --Wng z3r0 11:46, 16 May 2007 (UTC)
[edit] Syntax Comparisons
I just added the Syntax Comparisons section. Could someone update the table formatting for me (I'm not sure how)? Of course, expanding the list would also be nice! --Jimmytharpe 18:55, 25 January 2007 (UTC)
[edit] Moved to Archives
I have moved the content from this page to the /Archive01. The topics did not seem to be getting any additional discussion. I kept anything with the most recent comment in 2007. Gaijin42 14:54, 5 March 2007 (UTC)
[edit] Adoption
I added the citation needed tag to the "internal microsoft surveys" bullet in the adoption section. If a citation doesn't show up in the next few days I will drop the bullet. Gaijin42 14:54, 5 March 2007 (UTC)
- I dropped this per the note above. Gaijin42 04:30, 14 March 2007 (UTC)
[edit] Rewrite tag
There has been significant input and change since my original submission of this article. I am going to remove the rewite tag. Gaijin42 14:54, 5 March 2007 (UTC)
Who wrote this? It's very un-encyclopedia-like. "We have large VB projects that are unusable in VB.Net due to the size of the project. If your solution is likely to include a large number of classes, I would strongly recommend c#"--214.3.80.29 04:59, 22 April 2007 (UTC)
[edit] No Iterators in VBnet?
For i As Integer = 1 To 3 ' do something Next
For Each i As Integer In CollectionOfInt ' ... Next
looks pretty much like iterators, doesn't it? —Preceding unsigned comment added by 89.246.47.4 (talk) 18:40, 9 October 2007 (UTC)
- Thats not waht they mean by iterators. Iterators are a special syntax introduced in C# 2.0 that make it much easier to develop enumerators (i.e., the "yield return" statement). It allows one to write a method that returns an enumerator, but instead of executing fully when it is called, it executes until it yields its first value, which becomes the first value of the enumeration. When the next value is requested via the enumerator, the method begins executing again from where it left off (not at the beginning of the method). Its more or less a specialized form of coroutines. —Preceding unsigned comment added by Nimrand (talk • contribs) 14:16, 12 October 2007 (UTC)
[edit] Performance
Is there no performance increase when using C# rather than VB.NET? A few years ago I had a talk from a senior developer at tesco.com who said explicitly that they had to migrate from VB.NET to C# because VB.NET was just too slow. This was definitely prior to .net 2.0 and may even have been 1.0. It seemed strange to me at the time as I was under the impression that both compile to the same thing prior to execution and the difference is only in the syntax. —Preceding unsigned comment added by 86.16.149.12 (talk) 14:00, 2 January 2008 (UTC)
-
- Ultimately C# and VB.Net compile down to MSIL/CIL where the execution is identical. However, certain constructs that are easy to use in C# generate better IL than the easy to use VB equivilent, and visa versa. Usually there are ways to generate the better IL in the source language, but they may be a bit more cumbersome to maintain. Of much larger impact is the social patterns that are common to VB and C#, and the historical backgrounds of the developers. This info is entirely unprovable, and therefore not applicable to the main article, but it is my opinion that people who naturally gravitate to C# are much more aware of the code that they are writing, and what the impact is. VB developers are used to having things hidden from them, having magic wands that generate lots of code automatically, and thus are not as intimately aware of some of the performance considerations. But that is an issue of the developer, and not the language. (You may begin your response flames everyone :) )
Gaijin42 (talk) 20:52, 15 January 2008 (UTC)
[edit] New Direction
This article still needs a lot of work. None of it is cited, and I suspect a lot of it is original research. The topic itself almost encourages POV issues. What about changing this article from a comparison of C# and VB.NET to an overview of .NET Languages in general? To me, that would be a more encyclopedic topic.Nimrand 15:03, 2 December 2007 (UTC)
- I agree that the article still needs work, and as all language comparisons are, this topic is ripe for POV. However, I think the solution for POV is dilligence, and not a change such as you propose. This idea was brought up when I first started this page, and my opinion now is as it was then : Technically yes, this page would be more encyclopedic as a comparison of CLI languages. However, in practicality, the only two languages that matter are C# and VB.Net. If you need a job in .net, those are the languages you need to learn. If you are transitioning from some other platform (java, classic asp, c++, whatever) to .net, these are the two languages that you will choose between. Gaijin42 20:55, 3 December 2007 (UTC)
-
- First of all, I'm suggesting that we title it as an "overview" of .NET languages, not a "comparison." The word "overview" more clearly conveys to the reader and potential editors that the purpose of the article is to provide an informative discussion on the characteristics of the various .NET languages and the role each language plays in the industry, rather than to judge which language is "better". Secondly, refocusing the topic in this manner frees up the article to give weight to all .NET languages according to its overall importance, rather than being limited almost exclusively to C# and VB.NET. C# and VB.NET are the two most important, or at least the most common, but C++/CLI and other languages also play an important role. Lastly, I find the choice in topic as it is currently phrased to be questionable. It seems a bit hard to justify that there is reason for such an article to exist except as a forum for people to catalog the arguments for why one language is better than the other, and the fact that this article has only a single cited source after a moderately high volume of edits over 1.5+ years indicates to me that I may be right. With the current emphasis on quality over quantity on Wikipedia, I suspect that if the article continues in its current direction, it will continue to flounder and eventually be nominated for deletion. Nimrand (talk) 03:51, 6 December 2007 (UTC)
-
-
- Instinctively I like the word overview, and I do think that would lead to a better tier of discussion, however I modeled this page after the C# vs Java page and I do think that one of the goals of wikipedia is consistency. There is a whole category for language comparisons, and this article fits soundly in that category. The arguments which you make apply equally well to all those other comparison articles.If you are proposing a larger effort to re-organize all languages into overviews instead of comparisons, that would be logical, but I think the logistics of such a move would make it unrealistic. I am all for efforts to improve the NPOV and other aspects of quality of this article; but I am opposed to conceptually changing the article from its goal of comparing and contrasting the two languages (as well as minor ones) to aid in giving people understanding about the practical choices they must make in the microsoft world today.
-
-
-
- I totally agree that c++ and CLI languages serve an important role in the .net world, but for 99% of .net developers they will touch neither. And the other languages (F#, ruby.net etc) are used in even smaller numbers. I would totally support additional articles talking about each language (which I am sure there already are), or additional comparison articles, and even a general overview article (perhaps very inline with what you are thinking), but this topic also deserves its platform.
-
-
-
- Regarding your recent deletion of the metrics in the adoption section - I would love for better sources, but I have been unable to find them. I believe that the statements as they were, were not in violation of wikipedia's policy of no original research, under the guidelines in the Wikipedia:These_are_not_original_research and Wikipedia:Verifiability articles. The numbers are easy for anyone to reproduce on their own (although they will obviously change over time) and are clearly facts (at any given point in time) there is no opinion, or analysis in the raw numbers. Therefore I am reverting your change. I am open to more discussion on how to better word the poitns, as well as citations (perhaps "citing" the links to the searches directly?)
-
-
-
- Gaijin42 (talk) 21:04, 6 December 2007 (UTC)
-
-
-
-
- The statements are factual and possibly meet verifiability requirements. But, they're being used to show that one language is more widely adopted or has stronger community support than the other, which is a non-trivial deduction and that makes it original research. Having more hits on Google Groups or any search engine is not the same thing as having wider adoption or community support. In fact, its very possible such statistics are misleading.Nimrand (talk) 00:20, 7 December 2007 (UTC)
-
-
-
-
-
-
- I can see that. Lets work on rewording of the "thesis" statements, to better reflect what the bullet points can directly tell us, vs what can be inferred from that. How about this? I think it gets rid of un-sourced conjecture, and replaces the concept of adoption with activity, which I think is much less of a deduction based on the bullets. :
-
-
-
-
-
-
-
- Both C# and VB.Net have high adoption rates, and very active developer communities and Microsoft fully supports both communities. However, C# does have an advantage in terms of the level of community activity on the Internet. Also, there are more books available for C# than VB.Net, and publishers report that C# books significantly outsell the VB.Net counterparts.
-
-
-
Gaijin42 (talk) 15:34, 7 December 2007 (UTC)
-
-
-
-
-
- As there has been no response, I am going to make the change suggested above. Gaijin42 (talk) 15:03, 11 December 2007 (UTC)
-
-
-
-

