Classic VB6 vs VB .Net


DevX Home    Today's Headlines   Articles Archive   Tip Bank   Forums   

Page 1 of 2 12 LastLast
Results 1 to 15 of 17

Thread: Classic VB6 vs VB .Net

  1. #1
    Join Date
    Apr 2004
    Location
    Hawaii
    Posts
    220

    Question Classic VB6 vs VB .Net

    I'm using VB6 and writing apps that will work across the internet, directly connecting two or more people to play simple games. I was wondering where "Classic VB6" will be in say 5-10 years. Will Classic VB apps still run on Windows, or is it a 'must-do' eventual upgrade to VB .Net just to keep my apps operable? I have no interest in establishing website code, just direct connect software.

    Any comments appreciated.

    Shannon


    BTW: Is VB .Net a similar prgramming language to VB6? Is it very difficult to make the transition (in the basics)? Will I even recognize it?

  2. #2
    Join Date
    Nov 2003
    Location
    Portland, OR
    Posts
    8,387
    Windows Vista (formerly Longhorn) is scheduled to ship next year; it includes the VB6 runtime, so presumably VB6 applications will run on it. Beyond that, it's anybody's guess. Based on the fact that DOS and 16-bit Windows apps still run on current versions of Windows, I'm confident that VB6 apps will run as long as any other 32-bit apps (say, MS Office 12) do. Whether they will still run on Windows 2016 (or whether Windows will even exist in 10 years!), nobody knows.

    In my opinion, VB.NET -- the language -- is very similar to VB6. For example, take a look at these QuickSort implementations on my Web site: http://www.philweber.com/2005/03/17.htm#a138 . The VB6 and VB.NET implementations are identical. .NET Windows Forms controls, however, are quite different from VB6 controls, and there are numerous differences between VB6 runtime functions and the corresponding .NET Framework functions. So, you're in for a learning curve -- you'll probably feel some frustration for the first week or two -- but it's not insurmountable.
    Phil Weber
    http://www.philweber.com

    Please post questions to the forums, where others may benefit.
    I do not offer free assistance by e-mail. Thank you!

  3. #3
    Join Date
    Feb 2004
    Location
    Indianapolis, IN
    Posts
    424
    You can download the Express version of VB 2005 from http://lab.msdn.microsoft.com/expres...c/default.aspx

    This is a beta program, so it can have some problems. However, since you can freely download this, it is an excellent way to take a quick look at where VB has gone since version 6.

    Brad!
    -------------------------------------------------
    Bradley L. Jones
    Author, and more.
    QuinStreet / Internet.com
    (Developer.com, CodeGuru.com, DevX, jGuru, and more!)

    -------------------------------------------------

  4. #4
    Join Date
    Apr 2004
    Location
    Hawaii
    Posts
    220

    Thanks!

    A pep talk? Thanks, Phil for the insight! I've never seen you give a pep talk, nor have I seen you actually express outright humor. "Windows 2016?" LOL. I almost fell out of my chair. That was meant to be funny, yes?

    Thanks very much for the info, I do realize this subject was beat to heck for a long time but my head began spinning so I had to stop reading about it. I appreciate you taking the time to write me a summary.

    Thanks to you as well, Brad! I will definitely download the express version--what a great idea to get a quick peek. Much appreciated!

    DevX saves the day again!

    Shannon

  5. #5
    Join Date
    Apr 2004
    Location
    UK
    Posts
    3

    Pain

    "you'll probably feel some frustration for the first week or two -- but it's not insurmountable."

    As someone who has made the transition from VB6 to .NET over the last two years I think the "two weeks" part of Phils post is a little optimistic. In reality this learning curve time should be measured in months,. True VB.NET follows more or less the same syntax as VB6 but the underlying differences in the framework are large and the more importantly the .NET way of doing things is often very different and more involved.

    To give you an example early on in the conversion process I had to write a TCP/IP listener and client for some simple messaging. Microsoft put some example code up showing how to do it but it was a lot more involved than the corresponding VB6 way of doing it. Doing things the VB6 way in .NET is not necessarily the best way of doing things in .NET.

    Still as Phil says it's not insurmountable. I just think the learning curve is steeper
    Pryderi

  6. #6
    Join Date
    Apr 2004
    Posts
    23

    VB6 to VB.NET

    I agree with Pryderi; the learning curve is, for any project of substance, more than 2 weeks.
    The most significant difference, in my view, is that VB6 was a RAD tool while VB.NET is an OOP tool. While these two have some similarities in terms of syntax (with enough differences and new pieces to be confusing, even a bit frustrating, at times) they sometimes require a different approach. I tend to think that VB.NET is to VB6 what VB was to old DOS BASIC - similar in name, but requiring new skills and approaches to really use the new features.
    And I also agree with Phil in that Windows is likely to support VB6 apps for some time to come. Vista does, after all, still support DOS apps. I would guess 5 years more, minimum, but ten years is a very long time in the world of technology to hazard any guesses.
    Certainly, the learning curve is not insurmountable, but it takes some effort. The .NET environment is very rich, and very deep;much more so than VB6. How far you go with it will be really up to you! Good luck!
    Last edited by Sigid; 10-14-2005 at 11:18 AM. Reason: Additional point

  7. #7
    Join Date
    Dec 2004
    Posts
    2
    If you're concerned about support from Microsoft, then VB 6 will no longer be supported as of March 2008 - see http://msdn.microsoft.com/vbasic/support/vb6.aspx. Note VB 6 is already out of the Mainstream support phase and is currently in the Extended Support phase.

  8. #8
    Join Date
    Apr 2005
    Location
    Pasay & Candon City, I.S., Phils.
    Posts
    22
    This seems relevant...

  9. #9
    Join Date
    Oct 2005
    Posts
    6
    Not hard to compare , new .NET will make the difference more clear !

  10. #10
    Join Date
    Jan 2005
    Posts
    2

    VB .net Mathematics

    I'm an old fashioned guy. I still don't program for the internet or even (gasp) databases! Most of my programs use mathematics intensive nested loops. VB6 treats basic math type variables (Integer, Long, Single, Double, and such) pretty much as simple memory locations. VB .net treats ALL variables as objects. That one little point has a drastic effect on the speed of all mathematic operations, slowing them to (in some cases) less than one tenth the speed of VB6 math operations. That is a tragedy, but I don't see that we have any choice but to find some other language to handle intensive mathematical tasks.

    Jeff

  11. #11
    Join Date
    Nov 2003
    Location
    Portland, OR
    Posts
    8,387
    Jeff: I'm sorry, but that's not correct. Unless your code requires .NET to convert value to types to objects (such as assigning them to a collection or passing them to a method that accepts an object argument), VB.NET treats value types exactly the same way that VB6 does. If you'd care to post some VB6 code that demonstrates the performance difference, I'd be happy to convert it to VB.NET and run some benchmarks. VB.NET may indeed be slower than VB6, but if so, it's not because it treats value types differently.
    Phil Weber
    http://www.philweber.com

    Please post questions to the forums, where others may benefit.
    I do not offer free assistance by e-mail. Thank you!

  12. #12
    Join Date
    Jan 2006
    Posts
    34
    Interesting discussion, but I still haven't seen the advantage of using VB.net compare to classic VB. Anybody can give me idea why should we move to VB.net (or if we should not) ?

    Btw, for calculating stuff, in my opinion, no high level language can beat C. Sounds old fashioned, but use the classic C, if you need speed

  13. #13
    Join Date
    Nov 2003
    Location
    Portland, OR
    Posts
    8,387
    prasetya: In my opinion, .NET allows developers to be far more productive (after the learning curve, obviously). Visual Studio .NET has a great many usability improvements over the VB6 IDE, and the .NET Framework provides hundreds of classes that you, the developer, no longer need to write yourself.

    From a practical standpoint, you can buy VB.NET; try buying a new copy of VB6 today. You can get tech support for VB.NET if you need it. And there is a large, healthy market of add-on products for .NET (like there once was for VB6, but no longer is).
    Phil Weber
    http://www.philweber.com

    Please post questions to the forums, where others may benefit.
    I do not offer free assistance by e-mail. Thank you!

  14. #14
    Join Date
    Dec 2003
    Location
    Swiss Alps - a strange place for building aeroplanes
    Posts
    55
    Quote Originally Posted by hprasetya
    Interesting discussion, but I still haven't seen the advantage of using VB.net compare to classic VB. Anybody can give me idea why should we move to VB.net (or if we should not) ?

    BTW, for calculating stuff, in my opinion, no high level language can beat C. Sounds old fashioned, but use the classic C, if you need speed
    I still havent made the trip to .NET - I'll probably try again this year more out of curiosity then a requirement. Any requirements I have can still be adressed easily and rapidly in VB6. Glad to see its not just me who couldnt do it quickly.

    As for calulating stuff I find your comment interesting. For me nothing beats god ol' FORTRAN and the progress they've made there in 90/95/2003 is good stuff indeed.


    Eddie

  15. #15
    Join Date
    Dec 2005
    Location
    South of Nowhere, Maine
    Posts
    309
    If you want speed, why not ASM? You can include inline ASM with VB Classic if you use some special tools. Just google for it.

    As for switching? If you have new apps, write them in .Net (C# or VB or J# or C++). If you have existing apps, keep them in VB Classic. If they need to be moved to .NET, write them over from scratch. Most of the upgrading process is bunk.

    You can mix .Net and Classic in some instances. VB Run ( http://msdn.microsoft.com/VBRun/ ) has some good examples.

Similar Threads

  1. Speaking of strings...
    By Harlow in forum .NET
    Replies: 246
    Last Post: 10-26-2002, 12:30 AM
  2. YAG's status report - Feb 14, 2002
    By Seth Grossman [MSFT] in forum .NET
    Replies: 1
    Last Post: 02-15-2002, 12:35 AM
  3. More on Visual J#.Net
    By Jim Pragit in forum .NET
    Replies: 64
    Last Post: 10-20-2001, 08:06 PM
  4. VB Classic Destroyed (was Re: Truce?)
    By Patrice Scribe in forum .NET
    Replies: 11
    Last Post: 10-07-2001, 06:15 AM
  5. Re: Will VB hurt .NET? Instead of .NET helping VB?
    By Jonathan Allen in forum .NET
    Replies: 55
    Last Post: 02-20-2001, 05:18 PM

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
HTML5 Development Center
 
 
FAQ
Latest Articles
Java
.NET
XML
Database
Enterprise
Questions? Contact us.
C++
Web Development
Wireless
Latest Tips
Open Source


   Development Centers

   -- Android Development Center
   -- Cloud Development Project Center
   -- HTML5 Development Center
   -- Windows Mobile Development Center