I heard that the Standard Editions of VB.net and VC++.net are bad though. I can't remember why.
Then don't say it.
guess I just like bringing this up because I've never seen a compilers REQUIRE a freakin 26 MB "extra" framework just to run any program
Java requires the JRE; however, not as large as the .NET Framework. I see this issue as really moot, as if you're developing an application of value, installing the framework is a non-issue. Also, future platform releases will already have the framework installed.
VS .NET will practically guarantee your code will not run on anything but windows, whereas with VS6 some simple #define code will make it cross platform.
Huh? Yes, some simple #defines will make your code cross-platform in VC++ 6. I'm going to assume that was a joke. .NET is inherently cross-platform, it's just that implementations are not yet pervasive. Have a look at
Mono for one example. Microsoft also has a shared-source implementation that runs on FreeBSD and Linux called
"Rotor". There are implementations available for the Win Forms facets of .NET, ADO.NET, and even ASP.NET. Yes, .NET DOES run on other platforms, and it will only get better. Note that there are standards for .NET, including: the CLI, CLS, CTS, and CIL. All of the standards allow for cross-platform interoperability with the more significant subset of .NET. Have a look at the
ECMA standard and of course
MSDN.
Also, (I believe) you should be able to cut & paste your code from 6.0 into .NET at any time in the future and have it work.
Yes, there is a fairly powerful upgrade wizard, and it will even convert your web classes to ASP.NET pages in VS.NET 2k3, but there comes a time when evolving legacy code is simply no longer feasible.