November 19, 2010 at 7:49 am
Morning all,
I am debating on getting some training in a new programming language. The last one I had formal training in was C/Unix, so it has been a while.
I have been looking at getting a class in VB.Net or C#. I was hoping the forum folks here could help by expressing an opinion, or observation.
Thanks in advance.
November 19, 2010 at 7:56 am
November 19, 2010 at 7:59 am
IMHO, it depends on the syntax you are more familiar with to soften the learning curve.
.
learning a "new" language is really more about two things: learning the basic syntax, and learning which objects to use and what they do.
the little things, like the syntax of if-then-else, while/loops case statements, construction of Functions and Subs come over quickly;
it's knowing that you have to include Namespace System.Threading,or System.IO and how to use a Thread Object or a File object for example, that is the learning curve. Google and programming sites help that learning curve with examples...but it's the "eureka" moment when you know which object to use that is the hard part of any language.
that curve will be there in both languages, regardless. but once you know how to use that object in say vb.net, you can use one of the many code converters to ge tthe same code in c#.Net as well.
Lowell
November 19, 2010 at 8:04 am
My Vote is For C# as it is much eaiser and suppots fully OOP Concepts and close to any other OOP Language.
November 19, 2010 at 9:07 am
C# will get you more "resume opportunities", because it's got more egos attached to it that think it's a superior language. Since both go through the CLR JIT compiler, the capabilities and functionality are effectively identical.
Lead dev at my last job considered anyone who used VB (whether .NET or otherwise) to be a "macro programmer", while he considered C# a "real language". Honestly though, that was merely a sop to his own vanity, not a real issue. But lots of people think the same way.
So, if you want an item for your resume that will get more openings, go C#.
If you just want to be able to use .NET for productivity, go with whichever is more familiar to you. Look at some sample code on a variety of web pages and see if one or the other is easier to read, and pick that one.
- Gus "GSquared", RSVP, OODA, MAP, NMVP, FAQ, SAT, SQL, DNA, RNA, UOI, IOU, AM, PM, AD, BC, BCE, USA, UN, CF, ROFL, LOL, ETC
Property of The Thread
"Nobody knows the age of the human race, but everyone agrees it's old enough to know better." - Anon
November 19, 2010 at 9:17 am
VB is a language a lot of people use or have used but it has contributed to more poor programming techniques and software in general over the years (in my humble opinion). Even though VB.net supports object oriented programming methods I don't often see people who use it design their software that way. To me its a "clunky" language with deep roots traditional procedural programming methodology.
C# (and C++) on the other hand, is a superior language and more typically the folks who use it tend to have more concise and generally better structured and documented software.
That's my $0.2
The probability of survival is inversely proportional to the angle of arrival.
November 19, 2010 at 9:59 am
sturner (11/19/2010)
VB is a language a lot of people use or have used but it has contributed to more poor programming techniques and software in general over the years (in my humble opinion). Even though VB.net supports object oriented programming methods I don't often see people who use it design their software that way. To me its a "clunky" language with deep roots traditional procedural programming methodology.C# (and C++) on the other hand, is a superior language and more typically the folks who use it tend to have more concise and generally better structured and documented software.
That's my $0.2
Thank you for making my point for me.
No programming language can prevent bad code. Not possible.
- Gus "GSquared", RSVP, OODA, MAP, NMVP, FAQ, SAT, SQL, DNA, RNA, UOI, IOU, AM, PM, AD, BC, BCE, USA, UN, CF, ROFL, LOL, ETC
Property of The Thread
"Nobody knows the age of the human race, but everyone agrees it's old enough to know better." - Anon
November 19, 2010 at 1:27 pm
It really boils down mostly to your preference. Neither of them is really better than the other. They compile to the same CLR readable bits. I have disliked the way VB handles some of the most basic syntax things. For me it just tends to read awkward.
For example:
VB.Net
If not MyObject is null then
doSomething()
end if
C#
if(MyObject <> null)
{
doSomething();
}
_______________________________________________________________
Need help? Help us help you.
Read the article at http://www.sqlservercentral.com/articles/Best+Practices/61537/ for best practices on asking questions.
Need to split a string? Try Jeff Modens splitter http://www.sqlservercentral.com/articles/Tally+Table/72993/.
Cross Tabs and Pivots, Part 1 – Converting Rows to Columns - http://www.sqlservercentral.com/articles/T-SQL/63681/
Cross Tabs and Pivots, Part 2 - Dynamic Cross Tabs - http://www.sqlservercentral.com/articles/Crosstab/65048/
Understanding and Using APPLY (Part 1) - http://www.sqlservercentral.com/articles/APPLY/69953/
Understanding and Using APPLY (Part 2) - http://www.sqlservercentral.com/articles/APPLY/69954/
Viewing 8 posts - 1 through 7 (of 7 total)
You must be logged in to reply to this topic. Login to reply