Views: 64K
Replies: 14
Archived
|
Career path: C# versus VB.NETHello,
I am coming from an assembly / C background and I am ready to move into building databased business applications in .NET. My plan is to go as far as possible and become an .NET architect who is familiar with OO and Patterns. Since I am totally new to .NET, my question is what is the better language to start: VB.NET or C#. And what are the reasons? Look forward to your answers. And, thanks in advance. Henry Wong, Aug 30, 2010
|
|
Reply 1Difference b/w C#.Net and VB.Net
Doraemon D, Mar 06, 2013
|
|
Reply 2KEY DIFFERENCES
Collapse | Copy Code
int[] x = new int[5];
Initialize an array
Collapse | Copy Code
Dim a() As Long = {3, 4, 5}
Collapse | Copy Code
int[] x = new int[5] {
1, 2, 3, 4, 5};
Integer division
\
/
Modulus (division returning only the remainder)
Mod
%
Exponentiation
^
n/a
Integer division Assignment
\=
/=
Concatenate
&= NEW
+=
Modulus
n/a
%=
Bitwise-AND
n/a
&=
Bitwise-exclusive-OR
n/a
^=
Bitwise-inclusive-OR
n/a
|=
Equal
=
==
Not equal
<>
!=
Compare two object reference variables
Is
==
Compare object reference type
TypeOf x Is Class1
x is Class1
Concatenate strings
&
+
Shortcircuited Boolean AND
AndAlso
&&
Shortcircuited Boolean OR
OrElse
||
Scope resolution
.
. and base
Array element
()
[ ]
Type cast
Cint, CDbl, ..., CType
(type)
Postfix increment
n/a
++
Postfix decrement
n/a
--
Indirection
n/a
* (unsafe mode only)
Address of
AddressOf
& (unsafe mode only; also see fixed)
Logical-NOT
Not
!
One's complement
Not
~
Prefix increment
n/a
++
Prefix decrement
n/a
--
Size of type
n/a
sizeof
Bitwise-AND
And
&
Bitwise-exclusive-OR
Xor
^
Bitwise-inclusive-OR
Or
|
Logical-AND
And
&&
Logical-OR
Or
||
Conditional
If Function ()
?:
Purpose/Size VB.NET C# Decimal Decimal decimal Date Date DateTime (varies) String string 1 byte Byte byte 2 bytes Boolean bool 4 bytes Integer int 8 bytes Long long 4 bytes Single float 8 bytes Double double Decision structure (selection) Select Case ..., Case, Case Else, End Select switch, case, default, goto, break Decision structure (if ... then) If ... Then, ElseIf ... Then, Else, End If if, else Loop structure (conditional) While, Do [While, Until] ..., Loop [While, Until] do, while, continue Loop structure (iteration) For ..., [Exit For], Next For Each ..., [Exit For,] Next for, foreach Declare an array Collapse | Copy Code Dim a() As Long Doraemon D, Mar 06, 2013
|
|
Reply 3I'm primarily a C# developer however i don't believe C# is more OOP than VB.net, both languages has it's pros and cons, if your background is C/C++/Java then it's more logical to go with C#.
at the end of the day it all goes down to where you are more comfortable working with, both languages supports pretty much all the OOP features you'd need, can do the same design patterns, supported by the same framework. Concentrate on one but also be open with the other as to when an opportunity arises that you may need to switch languages for a job then you could easily switch between the 2. even with the samples on the web more focused on C#, there are tons of online and offline converters to switch it around. you could check out comparisons between c# and VB.net but on the top of my head C# can have Partial Interfaces and VB.Net can't, Static classes is also not available in VB.Net (although I believe Modules in VB are already sealed static classes so this becomes pretty much the same already). Gerard del rosario, Mar 17, 2011
|
|
Reply 4Choose C#, because it is more demanding and pure Object Oriented.
Rahul Tripathi, Feb 23, 2011
|
|
Reply 5I started dynamic web development initially with classic asp in which there was not much choice to begin with. vbScript was the way to go back in those days. So it was natural for me to pick VB.NET when it came to ASP.NET. I used it for a couple of years and since I was still developing for web, at some point it became apparent that I needed to do increasing amount of client side coding with JavaScript. There was one project in which we needed to use it a lot. So I became more familiar with the c-based syntax. Regardless of my years of experience with vb-syntax, I found it hard to revert back to it. So I naturally just switched to C#. I never regretted the change. C# still feels like a better choice with more possibilities. Besides, if you need experienced peer support with complex or advanced problems or with new technologies, you may expect to get it from the C# community. As for career opportunities, I believe you're better off with C#. There are more job openings, admittedly also more competition. Last but not least, with C# you wouldn' t be locking yourself into a corner. As a lot of other languages share most of the syntax.
Jani Hyytiäinen, Feb 22, 2011
|
|
Reply 6Hi Henry
I would choose C# * There are more examples out there * Most third party vendors uses C# as their main language * More jobs * Clean and easy syntax * Easier to read than VB.Net (I think) * The syntax is very similar to Java, C++ and various other Before I started with C# 5 years ago I was a Visual Basic 6 developer and the transition from VB6 to C# was actually easier than VB.Net. As an architect I don't think you need to know both languages equally well. Specialize in one, and know a few thing about the other. It's far more important to know the .Net framework and the various technologies it offers (WF, WCF, WPF, MEF, EF, LINQ) and how and where to use it. Good luck Hans-Petter Hans-Petter Eitvet, Feb 20, 2011
|
|
Reply 7I would suggest go with C#.As it is an cleaner and OOAD Lang.If you ever want to switch you can do it with easy.
Mohammed Sarfaraz, Jan 23, 2011
|
|
Reply 8If you are planning to become an Architect, you should learn and be able to use both. As someone has already stated, its a tool.
I dont mean that you will not have a favorite, because you will. But you should be able to switch from one to the other without issue. David Hawkins, Sep 15, 2010
|
|
Reply 9The number of C# jobs as opposed to VB.NET jobs are 20 - 1.
After learning either I find w/ a month or so you can become just as productive. There are also translators so just becuase there are C# examples you can easly convert them. There are obvious pros/cons to both. I find VB easier to read and good for new programmers, however if you come from C or Java, C# is the way to go. Net Wreck, Sep 14, 2010
|
|
Reply 10For an architect, language is a tool to achieve the end.
Use C# or VB.Net, but use the way no one has used ever before. Nunu Kohli, Sep 14, 2010
|
|
Reply 11Also you need to take in consideration that C# is standarized so you find products from other companies more likely to be focused on C#, specially you can find C# implementations to write apps for Linux and iPhone (go-mono.com)
You may someday ask to write something for silverlight and pretty much everybody is using C# on silverlight Alfonso Paredes, Sep 12, 2010
|
|
Reply 12I'm a VB.NET developer and if I were starting fresh I would choose C# only because there seems that more resources (web, magazines, etc) are written for C# first.
Ira Dobrow, Sep 10, 2010
|
|
Reply 13Hi,
C# and VB.NET both use the same set of Framework Base Class Libraries though their syntax are way different. C# follows C, C++ syntax where as VB.NET is more like writing English language like statement. In my opinion C# is more popular as compared to VB.NET but it would be up to you to decide which one to choose. Harshad Riswadkar, Sep 08, 2010
|
|
Reply 14I would say go for C#, now this is probably due to my background as a Java developer and later on C# developer. I have only lately been doing VB.Net development (maintaining legacy code). And one tends to recommend what one is most used to.
But since I started developing in VB I found it to be more cumbersome to use than C#. A benefit of using C# is that I have found most OSS and blogs are using C# which makes it easier to find examples. You will also get the benefit of understanding Java. Robert Blixt, Aug 31, 2010
|