1 / 35

What’s new in VB .NET

What’s new in VB .NET. adapted from a presentation on Introduction to Visual Basic .NET by Jeff Quasney Course Technology. An Overview. What’s New in Visual Studio .NET?. IDE (Start page, common for ALL .NET languages) Application templates New editing tools (HTML, XML, XSL, CSS…)

luther
Télécharger la présentation

What’s new in VB .NET

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. What’s new in VB .NET adapted from a presentation on Introduction to Visual Basic .NET by Jeff Quasney Course Technology

  2. An Overview

  3. What’s New in Visual Studio .NET? • IDE (Start page, common for ALL .NET languages) • Application templates • New editing tools (HTML, XML, XSL, CSS…) • Cross-language debugging, Multiple languages per “Solution” • New sample apps and documentation • Strong focus on XML

  4. What’s New in Microsoft Visual Basic .NET? • VB .NET was a rewrite, not an update • New/changed data types • No Variant, CTS • New/changed syntax • Dim, assignment, arrays, keywords… • Application distribution

  5. What’s New in Microsoft Visual Basic .NET? (continued) • Inheritance • Exception handling (Structured exception handling) • Overloading • Multithreading • Web development • Web services • Web applications (ASP.NET) • ADO.NET

  6. Application Types • Console Applications

  7. Application Types • Windows Applications

  8. Application Types • Windows Services

  9. Application Types • Web Applications

  10. Application Types • Web Services

  11. Application Types • Components

  12. What is .NET?

  13. .NET Framework

  14. Why .NET? • Common classes • Common security model • DLL “H E double-toothpicks” gone? • Side-by-side execution • Garbage collection • Multi-platform? • New application types • Language interoperability

  15. The Common Language Runtime • Takes control of the application and runs the application under the operating system • Microsoft Intermediate Language (MSIL)

  16. The Common Language Runtime • MSIL is CPU/OS independent • Compile once for multiple CPU’s/platforms • Take an EXE and run it on Linux • Ximian (?) is working on this • Assembly and manifest concept • Xcopy installs • Side-by-side execution • Logically, all EXEs and DLLs act as DLLs

  17. The Common Language Runtime • Registration info no longer in registry • Meta data stored in assemblies • Only distribute assembly • .NET Framework required on user’s system • Memory management • Exception handling • No IDL, no registration, no HRESULTS, no GUIDs, • Replaces all COM plumbing

  18. What’s New in VB .NET?

  19. About Procedures • Subs and functions need parentheses Use MyProc(“A parameter”) Not MyProc “A parameter” • ByVal is now the default! • Optional arguments need a default value • Sub DoWork(Optional ByVal i As Integer = 1) • Return is used in Functions to return a value

  20. About IF Statements • AndAlso and OrElse do short-circuiting If intX = 1 AndAlso intY = 2 Then In above example, second expression is not evaluated if intX is not 1

  21. About Object Declarations • OLD Dim objCustomer As Store.Customer Set objCustomer = New Store.Customer • NEW Imports Store Dim objCustomer = New Customer OR Dim objCustomer as Customer = New Customer

  22. About Scope • New Block-level Scope Dim intX As Integer For intX = 1 To 5 Dim intZ As Integer MessageBox.Show(“Scope is important.”) Next intX MessageBox.Show(“intZ is out of scope!”)

  23. About Arrays • Lower bound is always zero • Dim intA(5 To 8) no longer is possible • Option Base is gone as well • Arrays have VERY useful methods • Declare arrays by upperbound, not size – Same as VB6 • Dim strX(10) As String contains 11 elements • Setting an array to another array is now done by reference • In VB6, this was done by value • Use Copy method of arrays to make an actual copy

  24. About Loops • While…Wend changed to While…End While

  25. About Data Types • All variables are objects. Variants are gone. • Type a period after any variable in the IDE to see methods/properties • Strings are never fixed length. They are destroyed and recreated by the CLR when value changes • Only one type of string variable for ALL languages • No Currency data type. Now decimal. • UDTs are gone • Use structures instead • Structure statement replaces Type • Structures support methods!

  26. Useful Options • Option Strict On • Forces declarations • Forces data types to be same on both sides of = • Use it always. Get in the habit. Force your students to use it in assignments.

  27. About Operators • New concatenation operators +, -, *, /, & intI += 100 intl -= 100

  28. About Controls • Default properties of controls are GONE • New way to set tab order • Shape controls are gone • Use System.Drawing namespace

  29. About Menus and Help • Menu editor • Create a menu and a context menu • Help • Dynamic help is addictive

  30. Misc • New control alignment tools • New properties • Anchoring and AutoSize • Opacity of forms • Printing • Several new, powerful printing controls • Print controls/objects get more complicated, but more powerful • Crystal Reports is included with Professional/Academic versions • New way to set tab order

  31. What’s new in OO? • Too much to mention • Inheritance • Polymorphism • New syntax for creating properties • Read-only, Write-only properties • Aggregation is weird, though (just in VB) • Constructor = Sub New() : Destructor = Sub Finalize() • Don’t assume you know when destructor is called

  32. What’s new in Databases? • Too much to mention • ADO.NET • SqlClient namespace vs. OleDB namespace • DataSet and DataTable • DataReader • Plea/Editorial: Please don’t use Data controls

  33. What will make you scratch your head? • Line numbers are messed up • Can’t print a form in design mode for a Windows form, but you CAN for a Web form • Value of True (non-zero, not 1)

  34. The End

More Related