Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations strongm on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

VB6 or VB Net?

Status
Not open for further replies.

EvertonFC

Technical User
Nov 24, 2004
107
GB
Hello

I am quite new to VB (I started to learn it 2-3 years ago and have forgotten a lot) using VB6 and felt disappointed that after a 5-month long course, VB.Net was introduced.

Are programmers here on Tek-Tips using VB6 or VB.Net (in general)?

I am quite keen to get back into it and was thinking about obtaining Visual Studio (that contains VB.Net, doesn't it).

Any advice or links on this would be welcome.

Thanks

EvertonFC
 
Hello to you too,

Without reading your post but only the title, my answear is VB.NET. Reading it, my answear is the same again. A couple of things:

-If you have started a project in vb6 and you did a lot of things, try to complete with vb6. Using the upgrate wizard by vb.net will result in a total failure. What i mean is that you will have to do manually many many changes. It is better to start it again for the start with VB.NET.
-VB.NET is a fully object oriented language. So after vb6 there is no vb7, but VB.NET.
-Visual Studio .NET (2k3 framework 1.1) can skip you from writing alot lines of code. Futhermore, VS.NET (2k5 framework 2.0) whick is the last release {excellent product} is miles better than 2k3 version.

Your choice!
 
I think it is always good to be forward learning. So if you have the resources I would make the purchase.
 
After teaching myself VB.NET 2003 and completing an, some might ask why, application. I'm trying to recreate it in VB 6.0 as a refresher for VB 6.0. See my MDI Child ? post. Anyway to get to the point. Use VB.NET.

Everything I know I learned from The Grateful Dead and Buffy The Vampire Slayer
Charlie
 
Since you can't practically obtain VB6 anymore, Microsoft support is all but gone, and even MSDN articles are fading away, the answer for new developers is probably VB.Net given a choice between the two.

As far as what Tek-Tips members use, why I'd say they use both. There are many reasons to continue using VB6 if you already have a significant investment in it. It even has a number of advantages in some situations.

The pros and cons of each are numerous, and have been beaten to death elsewhere if you are truly interested. If starting fresh don't waste your time with anything prior to VS2005 or the Express editions though. The long beta cycles have ensured that 2005 is now the mainstream version even though officially released just months ago.

Part of what made VB6 so popular was the long stability offered when the product line was snuffed out after 1998. The .Net products are back on the approximately 2 year churn cycle MS dev tools saw prior to VS6. The golden age is over.

"Welcome to the Machine."

 
dilenttante 's is a sensible stand. I'd like to know what its advantages in certain situtations are?

I understand tou can use all 5,000 vb.net classes from vb6! Has anyone tried this? Has .net stabilized enough?
 
I'd like to know what its advantages in certain situtations are?

Here's a small example, relevent to my work.
We often design apps to run in our factories, on ancient, underpowered hardware. Not to mention anceint OS's.
I have one tiny app that consists of nothing more than a couple flexgrids that make some ADO calls. In VB6, it's about 170k, and uses about 8MB of memory. Converted to VB.net, it's a little smaller in file size, but uses a wopping 22MB of RAM.
The first app ran fine, the second bogged the old machines down to a nearly unusable state.
Not to mention, it requires installing the new updated controls to the client machine, which itself presented some compatibility problems in our case.
I am by no means proficient in .net yet either, so the problems may have been my own fault as well.
What I always liked about VB (and SQL) is the almost English-like syntax and how easy it is to learn. .Net introduces some new concepts, and changes things a bit, which makes it more advanced, but also a little more difficult to grasp for beginners. It is the future, but there are still a lot of places out there that use VB6.
 
Yes, old machines and in particular old Windows versions such as 95! Yes indeed, some companies are still running lots of Win95 and 95lite (which the 98lite product will still install). Some Win98 machines don't have the resources for .Net either (mostly compact machines like early tablet devices).

VB6 is still a better bet for freeware/shareware development too. This is mostly (once again) because it runs much better on low-spec machines. Also because small installation packages are created (since all but early Windows versions come with VB6 runtimes stable enough for most operations) making downloads quick and even floppy distribution still practical.

Office is still more easily extended with OCXs and DLLs created in VB6 rather than via VSTO, though this will change. WSH scripting is readily extended in the same way.

And of course in many shops there just haven't been programmer resources available to port existing critical applications forward to .Net yet.

In lots of cases it is about making do with less and keeping the past alive until old hardware can be phased out and old software rewritten.

There is no question that VB6's sun is low on the horizon though. By the time Vista is commonplace it will be thought of much as we do QuickBasic/PDS/VBDOS today.
 
Nice points! Thnks for the insights. However I'm suprised there is no response re. being able to use *ALL* 5,000 .Net classes from VB6 - some directly even without wrapping ( see Micrsoft VB Developer Center Previous Versions/VB6/VB Fusion ). To me this seems like a terrific thing. This means .Net will be left with no advantage other than inheritance. Incidently there plently of inhritance in VB6:
o all classes are derived from Object
o all designers extent some base class or the other
o Implements effects polymorphism - the esental benefit of derivation
o you can get yet another level of derivation by using the host classes feature of VBA
 
VB6 on the scale of OO rates about 4 in my book
.Net is better, perhaps a 7.
The use of .Net's built in classes should be fully tested and used with caution especially if speed is an issue.
I used a .net property to find the free disk space on a drive and it took about 20 times longer to work it out than a good old FSO call
 
You can download VB.Net 2005 Express for free for about the next year. After that, you can keep using it, but they will start charging those who don't have it yet. I have downloaded the img files for all 5 apps.

Here's the link for the Express Edition:


and here are the image files


Visual Web Developer 2005 Express Edition
Visual Basic 2005 Express Edition
Visual C# 2005 Express Edition
Visual C++ 2005 Express Edition
Visual J# 2005 Express Edition

David
 
Just out of curiosity, mrmovie, what's an OO 10 in your book?
 
mrmovie - thanks for the comment - just the kind of thing I'm looking for. What will happen in the 100,000 lines program I know of.

I second you heartily on OO in Classic VB. However my point was not the it was upto the mark but more of it was there than is obvious.

Stll badly in need of members views on using Framework from VB6 - hasn't anybody tried it yet?! After all at the binary level one could have a managed application ( whatever that is ) with VB6.
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top