Information about VB7 is still a bit sparse, but here are some of the new features we can expect.
Links
- VS.NET Beta 2 Home Page. Information, changes since Beta 1, download, order CD or DVD.
- .NET Framework SDK Beta 2.
- Pradeep's Home Page. Some useful COM+ and .NET links.
- C#: A friendlier tune from Microsoft. An article explaining that Microsoft has submitted C# to become an open standard language.
- 10 Syntax Changes in VB.NET Beta 2.
- Overview of Changes from VB6 to VB.NET.
- DevX .NET Resources. A whole bunch of .NET links.
- Is It Visual Basic Anymore? (Karl Peterson lists some differences between VB6 and VB.NET)
- The Transition from Visual Basic 6.0 to Visual Basic.NET (Microsoft responds to Karl's list)
- .NET Framework: Building, Packaging, Deploying, and Administering Applications and Types
- .NET P2P: Writing Peer-to-Peer Networked Apps with the Microsoft .NET Framework
- .net 101
- .netWire
- Archives of DOTNET@DISCUSS.DEVELOP.COM
- A Guide To .NET
- Visual Basic.NET: New Programming Model and Language Enhancements Boost Development Power
- Introduction to Object-Oriented Programming and Design Patterns in Visual Basic 6 and VB.NET
- Introduction to Web Forms
- .NET Developer Center
- Preparing Your Visual Basic 6.0 Applications for the Upgrade to Visual Basic.NET
- .netPlus Samples
- The Future of Visual Basic: Web Forms, Web Services, and Language Enhancements Slated for Next Generation
- Tracing
- VBxtras' Visual Studio .NET Headquarters
- GotDotNet Home Page
- .NET Framework, Visual Studio.NET, and ASP.NET Developer Resources
- 10 Ways to Prepare for VB.NET
- What Is Deterministic Finalization, and Why Should You Care?
Let me know if you have other links
you think could be helpful.
|
Features
- Compatibility
- VB6 and VB.NET can run on the same computer.
- Inheritance
- You can derive a class from a parent class.
- Structured Error Handling
- There will be some kind of more structured error handling, though I don't know the details yet.
- Coexistance
- You should be able to run VB6 and VB.NET on the same computer.
- Upgrading
- When you open a VB6 program in VB.NET, a Migration Wizard appears to help you convert it into VB.NET. There are a lot of changes, however, so you will probably still need to do a fair amount of work.
- Control Anchors
- You can anchor a control, to the lower left corner of the form for example, so you don't need to reposition it in Form_Resize.
- Easy Delpoyment
- You can install executables and components buy copying them into the right directory. No more messing with Regsvr32.
- New Forms
- Visual Basic forms become Windows forms.
- No PrintForm
- Windows forms do not have PrintForm. I don't know what we're supposed to use instead.
- Unified IDE
- All Microsoft languages use the same IDE. You can debug an OCX written in C++ while running it in a VB.NET program.
- Extensibility Model
- The new extensibility model applies to the IDE universally. That means you can write Add-Ins in VB.NET and use them in C#.
- GDI+
- The GDI (Graphics Device Interface) has new functions including Alpha blending, anti-aliasing, and support for more file formats.
- ADO.NET
- Improved performance.
- No DAO/RDO Binding
- VB.NET does not support DAO or RDO data binding, Data controls, or the RDO User Connection.
- Object type
- The Variant type is disappearing. The Object type can now hold a primitive datatype, Empty, Nothing, Null, or a reference to an object.
- Integer, Short
- The 16-bit Integer type is now called Short. The 32-bit Long type is now called Integer.
- "Easier" Property Procedures
- Property Get and Set procedures now look like this:
Property MyProperty() As Short
Get
m_MyProperty = MyProperty
End Get
Set
m_MyProperty = Value
End Set
End Property
I don't know why Microsoft thought we couldn't handle the old system.
- No Parameterless Defaults
- You can no longer say Text1 = "Hello". You must say Text1.Text = "Hello".
- True = 1
- True no longer equals -1. Now it equals 1.
- Bitwise Operators
- And, Or, Not, and Xor not are Boolean operators. The bitwise versions are BitAnd, BitOr, BitNot, and BitXor.
- Short-circuit Evaluation
- When VB6 executes this statement, both Function1 and Function2 are called no matter what value Function1 returns:
If Function1() And Function2() Then ...
In VB.NET, Function2 is not called if Function1 returns False.
- No Null Propogation
- Any VB6 statement that involved a Null value was Null. For example, Null & "x" = Null. In VB.NET, statements involving Null generate a type mismatch error.
- Zero-Based Arrays
- All arrays are zero-based. You can no longer say Dim X(1 To 10) As Integer.
- No Option Base
- The Option Base statement no longer exists (since all arrays are zero-based).
- No Fixed-Length Strings
- There are no more fixed-length strings.
- No Fixed-Size Arrays in UDTs
- When you make a user-defined type (UDT), arrays should be undimensioned. You ReDim the array after creating an item of this type.
- No Def<Type>
- These statements no longer exist.
- No Computed GoTo
- This statement no longer exists.
- No GoSub/Return
- These statements no longer exist.
- No VarPtr, ObjPtr, StrPtr, etc.
- These statements no longer exist.
- No LSet
- This statement no longer exists.
- No As Any
- You cannot use As Any in API declarations. You must make separate declarations for each data type you will pass to the API function.
- No OLE Container
- The Windows form does not support this control.
- No Shape or Line Controls
- These no longer exist.
- New Graphics Methods
- New methods replace Circle, CLS, PSet, Line, and Point.
- Timer Interval
- Setting a Timer's Interval to 0 does not disable it.
- Context Menus
- Windows forms have a main menu and a separate context menu used for popups.
- No DDE
- Windows forms do not support DDE.
- New Drag and Drop
- Drag and Drop still exists but is different.
- New Clipboard
- Improved clipboard functions.
- Name Property
- The Name property is no longer available at run time.
Survey
Here are the results of a survey I took on 4/21/01. Comments people made about questions 3 and 4 are at the end.
1. Are you using the VB.NET beta?
2. Do you plan to use Beta 2?
Yes | 3 |
Probably | 1 |
Maybe | 4 |
No | 9 |
3. Do you plan to use VB.NET when it is finally released?
4. Do you want to see more VB.NET examples?
Comments
Here are comments people made for questions 3 and 4.
3. Do you plan to use VB.NET when it is finally released?
No. I'm going to stay with VB6. This, because I am one of those rare, and becoming even more
rare, individuals who use computers for *computing* (i.e., scientific
computation). I can not care less about being able to create Internet-or
Intranet-related applications, so there is no need for me to suffer through
the agonies of coming in line with an almost entirely new development
system. Furthermore, I suspect that, knowing Microsoft, the current Beta
version is really an advanced Alpha, and that when the first commercial
version hits the streets, that's when the *real* beta-testing will begin.
This is cheaper for Microsoft. I know that this will doom me to living out
the rest of my professional days in the ever receding backwaters, but
that's Ok with me. I'm coming up on 66 years, and VB6 and VC++6 will serve
me nicely for as long as I want to remain active in the profession.
Only if held at gunpoint
What choice do I have?
Yes, do I have a choice? That is the direction of the future
Not sure, from what I've been hearing and reading.
Not if I can help it. I'm so mad at Microsoft's arrogance regarding
backwards compatibility that I'm planning on switching to C++ for new
projects. (Of course, I have to learn C++ first!) The few concessions that
MS has made to VB6 still won't change the fact that all of my projects are
going to require massive recoding to run under VB.NET.
MAYBE. Depends upon its popularity and support, and the Hailstorm/Passport
thing (not sure if I/we accept that yet). Right now the company and I see
no need for it in any project. I guess I’m taking my usual wait-and-see
attitude. Everybody here is scratching their heads and wondering WHAT
benefit can be derived from it?????
4. Do you want to see more VB.NET examples?
Yes. At the moment I only have time which permits me to learn either XML or
VB.NEt I need to make a decision which one to choose as of Now.
No. I'm still trying to learn VB6. From what I've read, VB.NET is a different language.
Yes, slowly. I'm just trying to understand what it is.
Also, can you answer what will be necessary to learn along with it. I gather
XML will be one. Will JavaScript work with it. That's what I mean by number 4
Yes, to find out more about it.
No. I see no reason to get all hyped up about software that isn't even
on the open market yet. As far as I am concerned, VB 6 is the
latest version of VB and that is what the examples, tips, tricks
and hints should be based on.
Later on, after VB.NET has been released (and the third service
pack released within 6 months after that), then our organization
>>> MIGHT <<< consider using it. But VB.NET is more like a brand
new programming language than a new update of VB.
YES, I do not have time to look at it yet and I appreciate your research.
Not until I've made the switch, which will probably be never!
Yes. Even if I don't understand them. I need to get my feet wet sometime.
SURE. I figure I’ll be forced to use it someday, whether I’m ready or not. Already
been passively learning about it through the flood of e-letters stuffed into
my inbox.
I've been attending the MSDN Events in Portugal and so far it looks
promising
(even if it looks like a MS tailored version of J2EE). At least they are
catching up...
For the developers, the .NET is "Code anyway, Run in Windows". Java
in the other hand is
"Code in Java, Run anywhere"...
I'm almost ready to install Beta 1, and intend to become used to it's
new paradigm. I would like to
see examples of VB.NET (mayhappen open a new layer on the site?)...
Yes, I'd like to see some after VB.NET is finally released. But, even then I'd
like to focus mainly on VB6 for a while since most people (including me) will take a while to upgrade.
Most people don't seem to like VB.NET but see it as unavoidable. You may be able to avoid
VB.NET but you will have to either stick with VB6 or learn a new language.
For a related article, see
VB Users Migrating To Newer Languages Latest EDC Study Shows.
I have not commented much on the VB.NET Beta 1 in public. I'm not happy with Beta 1, but I think it's great that Microsoft has made the Beta so widely available. I also realize this is only a beta and that performance should improve in Beta 2 and in the final release. I'll wait until Beta 2 before I start complaining too loudly.
|