Results 1 to 11 of 11

Thread: A LIttle Confused...

  1. #1

    Thread Starter
    New Member
    Join Date
    Sep 2010
    Posts
    2

    Question A LIttle Confused...

    Okay...what I really want to do is program in Visual Basic 6. I downloaded Microsoft's Visual Basic 2008 Express edition. Is this Visual Basic 6, or is this Visual Basic .NET? Is there a difference? I'm just a little confused between VB 6 and VB .NET (or whatever the express 2008/2010 editions are). If I don't have VB 6, how can I get a hold of it?

    Basically I just want to get VB 6, and understand the difference between these versions.

  2. #2
    I'm about to be a PowerPoster! Hack's Avatar
    Join Date
    Aug 2001
    Location
    Searching for mendhak
    Posts
    58,333

    Re: A LIttle Confused...

    Why do you want to do a program in VB6? VB 2008 is VB.NET, and that is the technology you should be using.

    Microsoft no longer sells VB6 and hasn't for quite some time. If, for reasons I do not understand, you really do want to obtain VB6, then I'd suggest something like eBay. Maybe someone wants to sell their old copy.

  3. #3

    Thread Starter
    New Member
    Join Date
    Sep 2010
    Posts
    2

    Re: A LIttle Confused...

    Well...I was looking at job postings online and a certain company was asking for experience in VB 6. How similar are VB 6 and VB .NET?

  4. #4
    Hyperactive Member Max Peck's Avatar
    Join Date
    Oct 2007
    Posts
    384

    Re: A LIttle Confused...

    Quote Originally Posted by handsomedan View Post
    Well...I was looking at job postings online and a certain company was asking for experience in VB 6. How similar are VB 6 and VB .NET?
    From a language (semantics) standpoint the two are similar, however VB.Net is a pretty complete departure from the VB6 programming model in a lot of ways. The latter VB is a completely object-oriented enabled version of the language and operates in a completely new environment.

    To concur with Hack, you really ought to be learning to program in .Net rather than VB6 if you're just getting started. That job listing that is looking for VB6 experience is probably looking for someone (an old fogey like myself) that has used it for a number of years. If you're just starting out as a developer you're not going to make yourself proficient enough in VB6 quickly enough to be attractive to that job posting. Let one of us older guys take that one. Further, you're going to basically be shooting yourself in the foot career-wise to start at VB6. Though it will be around for a long time yet, it won't be "mainstream" enough to keep you employed too much longer.

    Besides ... you can get VS.Net "Express" for free. VB6 can be had on eBay and places like that, sure, but as Hack said it's outdated technology. Not worth throwing away if you have an investment in it, but not something to be starting something new with either.

    -Max
    The name's "Peck" .... "Max Peck"

    "If you think it's expensive to hire a professional to do the job, wait until you hire an amateur." - Red Adair

  5. #5
    You don't want to know.
    Join Date
    Aug 2010
    Posts
    4,578

    Re: A LIttle Confused...

    About as similar as apples and oranges.

    Both languages share the same heritage: they derive from the BASIC line of languages, and ultimately VB .NET's syntax is designed to be familiar to VB6's syntax. Both languages can support late binding.

    VB6 is a structured programming language, which means you write code by defining collections of functions/subs that work on pieces of primitive data that are sometimes rolled into composite types. To get a string's length, you call Len(); to get a substring you use Mid(). VB6's type system is very loose; the compiler will make implicit conversions when the types of variables don't match. For example, if you are attempting to assign an integer value but pass a string, the compiler will automatically try to convert the string to an integer. This makes it easier to write code quickly but also makes it easy to make mistakes, and if you don't have a strong grasp of the compiler's conversion rules you can get confused when a line doesn't do what you thought it would do.

    VB .NET is an object-oriented programming language, which means you write code by defining types that represent data and the actions that can be performed on the data. To get a string's length, you look at its Length property; to get a substring you call its Substring() method. VB .NET has a feature that enables a strong typing system; when this is enabled the compiler will never make an implicit conversion unless it is guaranteed to cause no loss of data. For example, you can assign the integer 3 to a Double because 3.0 has no loss of precision, but trying to assign 3.1 to an Integer will require an explicit conversion because that .1 can't survive the conversion. This requires you to write more code but also forces you to pay more attention and you'll be less likely to make mistakes that make it to runtime.

    VB .NET released in 2002 and Microsoft immediately recommended that VB6 developers upgraded. Since then, there have been 4 new versions of VB .NET (the most frequent is VB .NET 2010, or VB 10.) Some time back in 2007 mainstream support for VB6 was dropped; now the only way to get a patch is if there's a critical security flaw or you give MS a lot of money. VB6 applications are supported in Win7 and Vista due to the large amount of critical applications that were written in VB6, but the VB6 IDE itself requires a bit of tweaking to get it working right from what I understand. Microsoft has made no comments on VB6 support in future versions of Windows, but if I were a gambling man I'd bet they'll pull the plug as soon as they think they can get away with it.

    There's not an easy way to obtain VB6 today. It hasn't been publicly for sale for 7 years. For a time, you could buy an MSDN subscription and gain access to VB6. I think currently if you buy a Visual Studio 2010 license you are allowed to use that license for VB6. Due to a lawsuit with Sun, Microsoft is no longer able to sell or distribute VB6; even with my MSDN subscription I can't get ahold of a version. This leaves eBay and sketchy online sales sites as the only way to get a copy.

    In my opinion, there is no reason to write new applications in VB6. It has no built-in support for features that came with XP like the more pleasing visual styles, and absolutely no support for Vista/Win7-specific features. I'd be wary of jobs doing new development; it's the programming world equivalent of a book publisher putting out a call for monk scribes to assist with the lettering and illustrations involved with copying tomes. Still, a job's a job and if it's all that's available at least it'll pay the bills while you look for something worthwhile. If it's maintenance development it's a little bit better, but maintenance development tends to be very frustrating and carries a large amount of deadline pressure so it may not be a good fit for you unless you've spent 4 or 5 years with VB6 and enjoy maintenance programming.

  6. #6
    PowerPoster JuggaloBrotha's Avatar
    Join Date
    Sep 2005
    Location
    Lansing, MI; USA
    Posts
    4,286

    Re: A LIttle Confused...

    Quote Originally Posted by Sitten Spynne View Post
    even with my MSDN subscription I can't get ahold of a version.
    I have Visual Basic 6.0, Enterprise Edition available for download on my MSDN subscription as well.
    Currently using VS 2015 Enterprise on Win10 Enterprise x64.

    CodeBank: All ThreadsColors ComboBoxFading & Gradient FormMoveItemListBox/MoveItemListViewMultilineListBoxMenuButtonToolStripCheckBoxStart with Windows

  7. #7
    You don't want to know.
    Join Date
    Aug 2010
    Posts
    4,578

    Re: A LIttle Confused...

    Ahh, so it is. Looks like I got it confused with Visual Studio 6.0, which would have included Visual J++. To be accurate, Wikipedia has a list of the software they can't distribute. Thanks for catching that for me.

  8. #8
    Next Of Kin baja_yu's Avatar
    Join Date
    Aug 2002
    Location
    /dev/root
    Posts
    5,989

    Re: A LIttle Confused...

    A question though, if a job posting asks for VB6 experience, how long will it be open if you plan to start learning now?!

  9. #9
    Hyperactive Member Max Peck's Avatar
    Join Date
    Oct 2007
    Posts
    384

    Re: A LIttle Confused...

    Quote Originally Posted by baja_yu View Post
    A question though, if a job posting asks for VB6 experience, how long will it be open if you plan to start learning now?!
    That depends on the opening. As I said in a previous post - if you're starting from scratch you won't be "experienced" in VB6 for some time. I wouldn't consider anyone with less than 3 to 5 years with a technology to be "experienced" in it. There's too many minor details that a VB6 developer must know to be proficient at it. I've been writing VB6 for 12 years (since it came out) and there are still techniques I don't know. (Altogether I've been writing code for 35 years). In retrospect I would not have considered myself an "expert" with VB6 until well after 5 years using it: and I'm talking about full-time application development for that time.

    Dot-Net is an even steeper learning curve than VB6. That's why I suggested going to it first at this point. If you are already an expert at VB6 as I am, taking a maintenance position makes sense. As a new developer it patently does not, IMHO.

    -Max
    Last edited by Max Peck; Sep 16th, 2010 at 09:08 AM.
    The name's "Peck" .... "Max Peck"

    "If you think it's expensive to hire a professional to do the job, wait until you hire an amateur." - Red Adair

  10. #10
    Hyperactive Member Max Peck's Avatar
    Join Date
    Oct 2007
    Posts
    384

    Re: A LIttle Confused...

    Quote Originally Posted by Sitten Spynne View Post
    About as similar as apples and oranges...
    Good post. Didn't know about the lawsuit deal with Sun.

    -Max
    The name's "Peck" .... "Max Peck"

    "If you think it's expensive to hire a professional to do the job, wait until you hire an amateur." - Red Adair

  11. #11
    Next Of Kin baja_yu's Avatar
    Join Date
    Aug 2002
    Location
    /dev/root
    Posts
    5,989

    Re: A LIttle Confused...

    Right. If you plan to do development professionally, and you are just starting, you should definitely start with .Net. VB6 has been long outdated and job openings are in decline, mostly maintenance/conversion work. In the time you get up to speed and gather experience they will be very rare.
    As to .Net, Visual Studio 2010 is available too, and like before Express edition is free.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  



Click Here to Expand Forum to Full Width