VB vs C#

Discussion in 'MCAD' started by Tony, Jan 13, 2004.

  1. Tony

    Tony Guest

    I know that VB.NET is now a true OO language, but it will
    never be a 'real' programmer's language, will it? Please
    read on before you start criticising this statement. I am
    well aware I could be completely off track. For example,
    class members in VB.NET are public by default...it seems
    to truly go against the principle of encapsulation. And
    implicit typing seems like an attempt to make it a
    programming language for non-programmers who don't know
    good programming principles, making it easier to code,
    but resulting in a language that is not strongly typed
    and increasing the potential for many more bugs. Is VB
    (as I suspect) for beginners and people who don't know
    much about programming, as well as for spitting out
    applications as fast as possible?

    If somebody started a dedicated software company (eg
    think Adobe, Microsoft etc), there's no way they would
    use VB for applications of that size, would they? I think
    once you start getting into a certain size, complexity
    and functionality of program, you would need to shift
    from VB to another language. Am I wrong? This is another
    source of confusion - why can't there be a simple answer
    to the question of "When should you use VB, and when
    should you use C#". If you pick up a book on VB it will
    tell you its the best language of all and harp on about
    its benefits, yet so will a book on C#, C++, etc. We need
    some simple, unbiased, and practical information for
    people not yet well immersed into the range of languages
    that allows them to make an informed decision.

    It seems that the only people who understand what
    language is best for what are those who have learned the
    whole range of languages in detail and have used them all
    commercially. This is expensive in terms of time and
    cost. The web site
    http://msdn.microsoft.com/vstudio/productinfo/whitepapers/
    default.aspx#top talks about the benefits of each MS .NET
    language, but does not compare enough to the other
    languages. It concentrates more on the benefits of each
    language than how suitable each language is for specific
    tasks. It is also written in a style that seems to be for
    well experienced programmers. Why can't Microsoft provide
    a good analysis of each language and its merits for
    beginners who have not yet immersed themselves in one of
    these, because they are too confused to know where to
    start? I don't want to start with something and find out
    in a year's time that I wasted 12 months.

    Any comments and advice would be appreciated.

    Tony
     
    Tony, Jan 13, 2004
    #1
    1. Advertisements

  2. Tony

    Daniel P. Guest

    Here is my comment as a developer with 12 years experience and working
    knowledge of C, C++, Java, C# and VB.NET:

    Study and learn very well C/C++. Then it is going to be a piece of cake to
    move to Java, C#, VB.NET, whatever.
     
    Daniel P., Jan 13, 2004
    #2
    1. Advertisements

  3. I agree. if you can spare the time, learn C and C++ so that you gain an
    understanding of what
    software really is about. learning can take some time. it took me a long
    time to learn and really understand, but after that, learning C#, VB, ... is
    really simple because it is always easier than C++.

    and no it doesn't work the other way around.
    knowing C# will help you practically nothing when learning C++. (And VB6 is
    even worse)

    kind regards,
    Bruno.
     
    Bruno van Dooren, Jan 14, 2004
    #3
  4. Tony

    Tony Guest

    Thanks for the feedback. When you say learn C/C++, I have
    learned C and then I learned C++. I understand them both
    relatively ok. Trying to teach myself Visual C++ has been
    a nightmare. I started a few months ago on VC++6. It
    seems like a giant concoction of C++, Win32, MFC and ATL -
    an impossible load for me to learn. Add to this, now with
    VC++.NET, some people are saying I don't need to learn
    MFC, Win32 and ATL now, while others are saying it still
    is useful, but goodness knows for what?

    Regards,

    Tony
     
    Tony, Jan 14, 2004
    #4
  5. Tony

    Daniel P. Guest

    When I say C/C++ I mean studying books like

    Effective C++: 50 Specific Ways to Improve Your Programs and Design (2nd
    Edition)
    by Scott Meyers (Author)
    http://www.amazon.com/exec/obidos/A...4103805/sr=2-1/ref=sr_2_1/102-9272132-5180140

    and many others.

    As for Visual C++ it is just a development tool. MFC, WIn32, ATl, etc are
    eother libraries, APIs, etc. vendor specific. You just need to understan how
    they work then you just use the MSDN Library tyo find what you need. I never
    bother to learn thi stuff by heart.

    I've heard of people being asking during intervuews about the name of the
    functions in Win32 or classes in MFC. I find that stupid and useless.
     
    Daniel P., Jan 14, 2004
    #5
    1. Advertisements

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments (here). After that, you can post your question and our members will help you out.
Similar Threads
There are no similar threads yet.
Loading...