Kiến trúc cũ của VBChương trình nguồn viết bằng VB Thư viện thực thi, ví dụ: msvbvm60.dll... Kiến trúc mới của .NETCác chương trình nguồn viết bằng VB.NET, C#, ASP.NET … Các thư viện ch
Trang 1Tổng quan về VB.Net
3 Các điểm mới trong VB.NET so với VB 6.0
Trang 2Kiến trúc cũ của VB
Chương trình nguồn viết bằng VB
Thư viện thực thi, ví dụ: msvbvm60.dll
Trang 3Kiến trúc mới của NET
Các chương trình nguồn viết bằng VB.NET, C#,
ASP.NET …
Các thư viện chung cho các chương trình viết trên VB.NET, C#, ASSP.NET…
Môi trường thực thi các chương trình NET sau khi đã dịch sang mã mã
trung gian.
Trang 4Minh họa: Chương trình VB.NET
Imports system.Array
Public class vbClass
…….
End class
Mã trung gian
Trang 5Minh họa: Chương trình C#
Using system.Array
Public class vbClass
…….
End class
Mã trung gian
Trang 6… Tất cả đều sinh ra mã trung gian
Using system.Array
Public class vbClass
…….
End class
Mã trung gian
Imports system.Array
Public class vbClass
…….
End class
Trang 7Cơ bản về VB.NET
VB là ngôn ngữ mở rộng (rất nhiều) từ VB
VB.NET là ngôn ngữ hướng đối tượng hoàn toàn.
VB.NET là một thành phần của môi trường NET, có thể
sử dụng các lớp được tạo từ ngôn ngữ NET khác, cũng như tạo các lớp để ngôn ngữ khác sử dụng.
Vẫn có thể sử dụng một số điều khiển cho VB trước đây
trong VB.NET (một số thì không).
Có thể Upgrade chương trình viết trong VB sang VB.NET.
Có thể viết các ứng dụng windows (winforms), windows
service, mobile devices…bằng VB.NET
Có thể DỊCH câu lệnh viết trong VB sang VB.NET
Trang 8… tiếp
trong VB.NET (+ Cần chuyển kiểu dữ liệu cho phù hợp)
đây hầu hết được hỗ trợ trong VB.NET nhưng ở dạng Class và phần lớn nằm trong các thư viện :
Microsoft.VisualBasic;
Microsoft.VisualBasic.IO;
Microsoft.System …
Trang 9Một số điểm mới trong VB.NET
Dim a,b,c As Integer a,b,c đều là Integer
Dim a As Integer = 10 Gán trị khởi đầu
Khai báo cấu trúc: Dùng Structure thay cho Type
Public Structure SinhVien
Dim Hoten As String
Public Tuoi As Integer
Private QueQuan As String
End Structure
Trang 10… Cont
Chỉ số đầu tiên luôn là 0, không được tùy
ý như trước (từ 3, 6 , 10 …)
Có thể khởi tạo mảng khi khai báo
‘Khai báo mảng có 11 phần tử (từ 0…10)
Dim Mang1(10) As Integer
‘// Khai báo mảng có khởi tạo (5 phần tử)
Trang 11cách của C/C++
A += 5 <==> A = A + 5
S &= “Hello” <==> S = S & “Hello”
Trang 12… cont
phải chỉ rõ là byVal hay byRef Mặc định
là byVal (chứ không phải là byRef)
cùng tên (miễn là có khác biệt về kiểu, hoặc số lượng tham số)
đặt tham số trong ngoặc ()
Trang 13… Cont
ngôn ngữ trên nền NET (ví dụ C#)
hoặc thừa kế các lớp một cách dễ
dàng
viện dùng chung cho các ngôn ngữ khác chạy trên nền NET
Trang 14 Định nghĩa thuộc tính (Property)
Public Property Tuoi()
Get
Return 100
End Get
Set (ByVal value)
If value < 0 Or value > 200 Then
MsgBox("Tuổi không hợp lệ ", MsgBoxStyle.Critical)
Else
MsgBox("Tuổi bạn vừa gán là:" & value, MsgBoxStyle.Information) End If
End Set
Đoạn lệnh này được gọi khi ĐỌC giá trị của
thuộc tính tuổi
Đoạn lệnh này được gọi khi GÁN giá trị của
thuộc tính tuổi
Trang 15 Cơ chế bắt lỗi mới (tuy vẫn hỗ trợ cơ chế cũ – On error
cấu trúc.
Try
… <Câu lệnh>…
Catch ex As Exception
MsgBox("Có lỗi: " & ex.Message, MsgBoxStyle.Critical) End Try
Trang 16… Cont
là các đối tượng và đều được dẫn xuất từ lớp Object
Trang 17…Một số hàm, thủ tục của VB đi đâu ?