Prev: rsidll32
Next: Run executable from memory/ram?
From: CadAd on 14 Jun 2005 17:01 What is the difference between Visual Basic 6.0 and Visual Basic .Net? I'm looking to get started in Visual Basic and don't understand? -- Scott ý--ý
From: Dag Sunde on 14 Jun 2005 19:21 "CadAd" <Harmon.Scott_RemovýThýs_(a)BETADesign.com> wrote in message news:42af4687(a)news3.prod-bent.dmz... > What is the difference between Visual Basic 6.0 and Visual Basic .Net? I'm > looking to get started in Visual Basic and don't understand? > <"http://groups.google.no/groups?hl=no&lr=&threadm=oRUpe.1750%24qE.450542%40 juliett.dax.net&rnum=3&prev=/groups%3Fq%3Dvb6%2Bvs.%2Bvb.net%2B-%2Bwhat%27s% 2Bthe%2Bdifference%26hl%3Dno%26lr%3D%26group%3Dcomp.lang.basic.visual.misc%2 6selm%3DoRUpe.1750%2524qE.450542%2540juliett.dax.net%26rnum%3D3"> -- Dag.
From: Wraith Daquell on 14 Jun 2005 20:03 VB6 should only be used if: 1) You need to develop programs that run on Windows 95, 2) Your code is high-risk and shouldn't be viewed or decompiled, 4) The code you write must never have to be upgraded (like Latin, a non-changing language), or 3) You like old environments. VB.NET is newer, easier to use, and a slight bit more powerful. It's not quite as fast (we're talking milliseconds here), but the development time will usually be faster. The problems: 1) .NET is still changing, as is VB.NET. This is an issue when upgrading development environments 2) VB.NET costs more in most cases. The solution? Flip a coin. If it falls heads, buy VB.NET. If it falls tails, buy VB.NET. If, though, it should fall on its rim, get VB 6. Or just buy which one you think would work best for you :) .
From: Michael D. Ober on 15 Jun 2005 09:14 "Wraith Daquell" <WDaquell(a)gmail.com> wrote in message news:1118793820.176638.237050(a)g43g2000cwa.googlegroups.com... > VB6 should only be used if: > > 1) You need to develop programs that run on Windows 95, True > 2) Your code is high-risk and shouldn't be viewed or decompiled, VB 6 can be decompiled if you use the p-Code option, which is the default. > 4) The code you write must never have to be upgraded (like Latin, a > non-changing language), or True > 3) You like old environments. True > > VB.NET is newer, easier to use, and a slight bit more powerful. It's > not quite as fast (we're talking milliseconds here), but the > development time will usually be faster. The problems: > > 1) .NET is still changing, as is VB.NET. This is an issue when > upgrading development environments It appears VB 2005 (.NET 2.0) is finally a good "upgrade" path. VB 2005 Beta 2 is available, feature complete, and stable. > 2) VB.NET costs more in most cases. MS has announced that VB 2005 Express will be $50.00. Visual Studio Standard (VB, VC, VC#, VJ#, VWeb Designer) will be $150.00. The MS marketing geniuses finally figured out that VS had been priced out of the market for hobbyests (Express editions), and single developers (VS Standard). The beta is free, but it has an expiration date of early May 2006 - it's near the top of the EULA. > > The solution? Flip a coin. If it falls heads, buy VB.NET. If it falls > tails, buy VB.NET. If, though, it should fall on its rim, get VB 6. Or > just buy which one you think would work best for you :) . > You can run both development environments concurrently. However, if you are starting to look at .NET, don't waste your time with VS 2002 or VS 2003 (.Net 1.x). MS has announced a launch date of Nov 7, 2005 for VS 2005. If you decide to try VB.Net, remember that the languages are both Basic, but that there is no standard for Basic, so there are a lot of differences between VB 6 and VB 2005, most of which favor VB 2005 once you understand them. Also, don't post requests for information about VB 2005 problems in this NG. You need to go to a "dotnet" newsgroup such as news://microsoft.public.dotnet.languages.vb. Mike Ober.
From: Michael B. Johnson on 15 Jun 2005 10:53
On Tue, 14 Jun 2005 17:01:59 -0400, "CadAd" <Harmon.Scott_RemovýThýs_(a)BETADesign.com> wrote: >What is the difference between Visual Basic 6.0 and Visual Basic .Net? I'm >looking to get started in Visual Basic and don't understand? With everyone else piling on behind .NET, let me give you an alternative view. Historical Context: The .NET language is a significantly changed API from the VB6 environment - Microsoft ripped the rug out from under those of us who, through hard work, helped it get where it is today. This is hardly the first time they've done that. Since this is a clear pattern, I can hardly recommend you invest your time, sweat and tears into something that is only going to change radically in 5 years, perhaps far /less/. Microsoft is working overtime to compel people into a subscription model of software, away from software licensing because this way they can ensure a higher barrier-to-market, as well as increase revenues. The fact that this is at the expense of their customer and their customer's security is of no consequence to the Microsoft Corporation and their board. By investing in .NET, you help perpetuate this and aid its spread. I think that in the long run, Microsoft is going to lose to Open Source software. Technical Info: .NET has a number of concepts that can be harder for a beginner to absorb, such as overloading, polymorphism. However, if you know C++ or Java, these will comfortable, familiar concepts. The .NET API, being proprietary and closed, is going to be incompatible with anything else you'll ever work on - it's been intentionally designed by Microsoft to be that way so they can call it their own intellectual property. (There is an open-source product called "Mono" that many would say would allow .NET apps to run on the Linux operating system, but my view is that Microsoft will come down on them like a load of bricks destroying their work via patent/copyright/trademark/other lawsuits.) Different versions of .NET (version 1.0 compared with 1.1) are incompatible with each other. My company has run into problems sometimes installing the framework and getting them to work well. Each time Microsoft releases a different .NET framework (read API), you'll have to completely re-engineer your applications and get your clients to download yet another 20 Megabyte run-time. Do you enjoy life on the bleeding edge? VB6 has the virtue of simplicity and a large, solid existing code-base to draw upon. It is well-known. Many volunteers (like those in this newsgroup) will take the time to help you if you show willingness to learn and regular, decent manners. There are cases where a Web Service will be easier to write in .NET, but there are many many cases where, in my judgement, more commonly needed solutions are /easier/ to deliver in VB6. Obviously, I disagree with the assertion that it's "faster to develop in .NET". If you are looking to be employed in the near future in the corporate world, you'll probably be compelled to slave under .NET. Otherwise, you will be better off learning and using VB6. VB6 is simple yet capable, it's reasonably fast, it /works/ and it doesn't require tons of RAM. Some of the differences between .NET and VB6: * Radically different APIs * .NET has better error handling, in some ways - but does nothing you can't already accomplish in VB6 - but it may not be as pretty. * .NET is a memory hog in my view. The IDE is big and slow, too. It takes a great deal of disk space. Don't install it on an old computer or it won't be useable, whereas VB6 may do quite well. * .NET provides for inheritence, VB6 does not. Inheritence can be complex and easily misused by beginners. * .NET has better garbage collection than VB6, but this isn't much of an issue for beginners. Conversely, .NET prevents you from freeing memory when /you/ want it freed up. * .NET provides better multithreading than VB6, which generally is "stuck" in Apartment threading. This won't be any issue at all for a beginner, in fact, you might want to stay completely away from threads at the very beginning. * .NET applications start slow because they seem to require a lot more initialization. Once they get up, they seem to run ok. * It may be harder to buy a copy of VB6 than it is to buy a copy of .NET. * VB6 is stable and won't be changing much. .NET is /still/ fluid and you can expect even more change. * VB6 is very like VBA and VBScript - if you've got MS Office '97 or 2000 or 2003, the VB6 language is just like the Office automation you already have. You could even conceivably use MS Word or MS Excel or MS Access to help learn VB6. * In .NET, you can't use the controls that work for prior versions of VB. If you need to use COM components, you're going to have to use an additional layer to access them. Conversely, VB6 can't use .NET assemblies whatsoever. (No loss.) I hope this provides a more objective evaluation on which to base your decision than the prior posts that are the moral equivalent of "doood, like, yu know, ..NET is just kewl! And, like, dood, those VB6 guys are all loosers, okaaay?" Finally, if you must go the .NET route, you've got to consider whether in fact you should use C# or VB.NET. If you must go .NET, give C++ some serious consideration - because for experts, it is a better more powerful language than C# and VB.NET, especially given it's 100% compliance with the STL. If you're not willing to invest in C++, then maybe you /should/ give VB6 or Delphi some /serious/ consideration. _______________________ Michael B. Johnson |