#1
  1. No Profile Picture
    Registered User
    Devshed Newbie (0 - 499 posts)

    Join Date
    Apr 2012
    Posts
    5
    Rep Power
    0

    I think C# is my Language of Choice


    For about the last 6 months, I have really dived into programming. Before that, I had a VERY BRIEF understanding of Visual Basic. I worked on VB6 for a while, and then VB.NET. Soon after, I came across C#, which I had heard to be much more powerful and sophisticated than BASIC languages. I found this to be very true. I learned a lot about C# through video tutorials, and my programming enthusiasm faded out for a few weeks, but then I started working with PHP, learning all of the basics. Then I learned the basics of ColdFusion, and finally got a very good understanding of the Java language (which my C# experience made it much easier to learn Java). I then tried to learn some basics of C++, and realized that it was very tedious. I learned a little Python, but have fully returned to C#, and I am pretty sure it is my favorite. I like the style of programming in C#.

    Anyways, I am really trying to get to the next step of knowing some C#. I am reading heavily out of the "C# 4.0 In a Nutshell" book from O'Reily and it is teaching me quite a bit. I am sure I will be here to ask some questions soon when I hit a roadblock or need a problem solved.
  2. #2
  3. ASP.Net MVP
    Devshed Specialist (4000 - 4499 posts)

    Join Date
    Aug 2003
    Location
    WI
    Posts
    4,378
    Rep Power
    1510
    Right now the only edge c# has over visual basic is iterator blocks, and even that's disappearing with the next release of visual studio, probably before the end of the year. VB.Net also has xml literals, which c# lacks. In nearly every other way the languages are just two sides of the same coin, and they both compile down to the same IL code in the end using the same .Net framework apis.

    But you could do worse than c# (php comes to mind). If you want a good book, I recommend C# in Depth by Jon Skeet.
    Primary Forum: .Net Development
    Holy cow, I'm now an ASP.Net MVP!

    [Moving to ASP.Net] | [.Net Dos and Don't for VB6 Programmers]

    http://twitter.com/jcoehoorn
  4. #3
  5. Lord of the Dance
    Devshed Expert (3500 - 3999 posts)

    Join Date
    Oct 2003
    Posts
    3,534
    Rep Power
    1906
    Originally Posted by f'lar
    But you could do worse than c# (php comes to mind).
    Just curious about what is wrong with PHP?
    (Besides it is more targeted to web-programming compared to .NET that can be used for application as well)
  6. #4
  7. No Profile Picture
    Contributing User
    Devshed Newbie (0 - 499 posts)

    Join Date
    Feb 2007
    Location
    Charlotte
    Posts
    412
    Rep Power
    144
    I prefer C# as my chosen language as well.

    But f'lar is correct in saying that C# is not "better" than VB.NET. They are equivalent.

    To me, VB.NET just brings back the bad memories of VB from the mid 90's that I despised, but that is a mental block that *I* have, not a true fault of the language. Especially for new developers, VB.NET might be easier to learn.

    At least in the Charlotte region, C# is the preferred PROFESSIONAL language, meaning that you will see .NET C# listed way more than you will VB.NET. We used C# exclusively both at my previous job as well as my currrent employer.

    But... if you can code in one, you should be able to code in the other... just may have to Google syntax differences. Properties and methods are all the same for the various classes. There are web sites that will convert C# code into VB.NET code, although I've not seen any that does the reverse.
  8. #5
  9. ASP.Net MVP
    Devshed Specialist (4000 - 4499 posts)

    Join Date
    Aug 2003
    Location
    WI
    Posts
    4,378
    Rep Power
    1510
    @Mr Fujin - I actually don't mind php as a language, but as a platform (including api, docs, support, direction, etc), it's a real mess.
    Primary Forum: .Net Development
    Holy cow, I'm now an ASP.Net MVP!

    [Moving to ASP.Net] | [.Net Dos and Don't for VB6 Programmers]

    http://twitter.com/jcoehoorn
  10. #6
  11. No Profile Picture
    Contributing User
    Devshed Newbie (0 - 499 posts)

    Join Date
    Apr 2012
    Location
    London
    Posts
    40
    Rep Power
    15
    Hello Fellow users,

    I'm a polygot programmer, as such I'm fluent in both vb.net and c#.net

    As f'lar has pointed out, there really are not much difference between the languages. They are part of the .NET ecosystem.

    Ultimately all .NET languages target the same MSIL and all boil down to the same CLR byte code.

    Yes, its OK to have a preference.

    Having said all this, C# does have some benefits in the sense that it is part of the "C style family". Which means when it comes to learning other languages you will already have a head start.

    Anyway once you have learned a few languages, its all pretty trivial. You should focus on the "Art of Programming" more than simply the language.
  12. #7
  13. I <3 ASCII
    Devshed Regular (2000 - 2499 posts)

    Join Date
    Aug 2003
    Posts
    2,399
    Rep Power
    1232
    Originally Posted by Ronster
    But f'lar is correct in saying that C# is not "better" than VB.NET. They are equivalent.
    Having used C# for quite a while, and VB.NET for the last year, I contend this is not quite true. It's not as bad as most people think (because VB6 tainted opinions), but honestly if you're choosing between the two for learning purposes choose C#.

    VB.NET has Xml Literals, but C# has iterators, a truer inheritance model, better reflection, a different definition for null, and better IDE support (better regions, better snippet support).

    I know this is a small list, and most of the differences can negated with proper design (or minor refactors). When maintaining code, or working plugging into a dll or api, a redesign isn't always possible, and these factors can cause additional issues.

    -MBirchmeier
  14. #8
  15. No Profile Picture
    Contributing User
    Devshed Newbie (0 - 499 posts)

    Join Date
    Feb 2007
    Location
    Charlotte
    Posts
    412
    Rep Power
    144
    Originally Posted by MBirchmeier
    Having used C# for quite a while, and VB.NET for the last year, I contend this is not quite true. It's not as bad as most people think (because VB6 tainted opinions), but honestly if you're choosing between the two for learning purposes choose C#.

    VB.NET has Xml Literals, but C# has iterators, a truer inheritance model, better reflection, a different definition for null, and better IDE support (better regions, better snippet support).

    I know this is a small list, and most of the differences can negated with proper design (or minor refactors). When maintaining code, or working plugging into a dll or api, a redesign isn't always possible, and these factors can cause additional issues.

    -MBirchmeier
    Hey, I'm with you 100%. I used K&R C professionally for probably 15 years. I learned C++ late in that period (via night classes) but never used it professionally. I loathed C++.

    C# takes all the object oriented stuff of C++ but makes it more natural. When I first looked at C# 6 years ago, I was immediately comfortable with it.

    I had to do a small VB.NET project at my last company... pure torture.

    I was using the "equivalent" statement primarily that they both boil down to the same MSIL. And because some people seem to truly think VB.NET is closer to VB6 than C#.NET.

    But if I have any control over it... no more VB.NET for me.
  16. #9
  17. ASP.Net MVP
    Devshed Specialist (4000 - 4499 posts)

    Join Date
    Aug 2003
    Location
    WI
    Posts
    4,378
    Rep Power
    1510
    VB.Net will have iterators in the next release. You can play with them now with an msdn subscription. I'd argue it has better ide support in many ways, and it's the same inheritance model (they're the same types in bcl, using the same inheritance tree) and equivalent reflection support.
    Primary Forum: .Net Development
    Holy cow, I'm now an ASP.Net MVP!

    [Moving to ASP.Net] | [.Net Dos and Don't for VB6 Programmers]

    http://twitter.com/jcoehoorn
  18. #10
  19. I <3 ASCII
    Devshed Regular (2000 - 2499 posts)

    Join Date
    Aug 2003
    Posts
    2,399
    Rep Power
    1232
    Originally Posted by f'lar
    VB.Net will have iterators in the next release. You can play with them now with an msdn subscription. I'd argue it has better ide support in many ways, and it's the same inheritance model (they're the same types in bcl, using the same inheritance tree) and equivalent reflection support.
    Glad to hear they'll be having iterators that's probably half of my issue with VB.NET.

    The inheritance and reflection issues really seem to come in when using interfaces. Since in VB you can have the interface properties be different from the actual property reflection gets thrown off.

    Additionally on an interface if you're returning 'shape' one must return a 'shape' you can't return a class that extends 'shape' like you can in C#.

    -MBirchmeier
  20. #11
  21. No Profile Picture
    Registered User
    Devshed Newbie (0 - 499 posts)

    Join Date
    May 2012
    Posts
    9
    Rep Power
    0

    Smile I think C# is my Language of Choice


    hey

    C# is the preferred and best language.

    for new users, VB.NET is more useful and easy to run as they are equivalent


  22. #12
  23. No Profile Picture
    Permanently Banned
    Devshed Newbie (0 - 499 posts)

    Join Date
    Apr 2012
    Posts
    5
    Rep Power
    0
    I also like C# language the most.

IMN logo majestic logo threadwatch logo seochat tools logo