Visual Basic .NET

Visual Basic.NET là một công cụ lập trình hỗ trợ ngôn ngữ lập trình Visual Basic.NET trong bộ công cụ lập trình Microsoft Visual Studio 2005. Trong Microsoft Visual Studio 2005, có thể kết hợp các project (dự án) viết bằng các ngôn ngữ khác như C#, J#,... với VB2005.
VB2005 được chạy trên nền .NET Framework 2.0, khi đóng gói chương trình cũng cần bộ Framework này để chạy chương trình. Cũng như VB 6.0, VB2005 cũng là ngôn ngữ lập trình hướng đối tượng.

**Lịch sử**
Microsoft Visual Basic. NET hay còn gọi là VB.NET được Microsoft phát triển từ cuối thập niên 1990 và ra phiên bản đầu vào năm 2002 (cùng với Visual C# và ASP.NET). Phiên bản mới nhất hiện nay là Visual Basic. NET 2015.

**Cú pháp**
Cũng như Visual Basic, chú thích trong Visual Basic.NET sử dụng dấu nháy đơn ('), các lệnh trên cùng một dòng phân cách nhau bởi dấu hai chấm (:), và câu lệnh quá dài có thể nối xuống dòng dưới bằng dấu gạch dưới (_).
Một chương trình Visual Basic. NET mang tên "Hello, World":
Module HelloWorld
Sub Main()
Console.WriteLine("Hello, World")
Console.ReadLine()  
End Sub
End Module
Đây là một loại chương trình cổ điển nhưng đầy đủ về mặt cú pháp thường dùng.
Kết quả xuất ra màn hình như sau:
Hello, World

**Các câu lệnh trong thân chương trình**
 Từ Khoá Module... End Module
Module có nghĩa là Đơn thể, một chương trình có thể chứa nhiều đơn thể. Từ khoá End Module là từ khoá kết thúc chương trình không giống, không như Pascal hoặc các ngôn ngữ khác như: C/C++, J#, Java. Visual Basic không cần có dấu phân cách giữa các câu lệnh, các câu lệnh phải nằm khác dòng.- Từ khoá Sub... End Sub
Sub (thủ tục) một chương trình có thể chứa một hoặc nhiều thủ tục. Thủ tục chính có mang hàm Main() là Sub Main(). Hàm Main() của VB.NET là hàm bắt đầu của một chương trình. Khi viết chương trình VB.NET bạn phải đặt hàm Main() tại một "Sub chính" trong chương trình. nếu không đặt hàm Main() vào chương trình thì chương trình không thể chạy được. Có thể nói hàm Main() là đầu mối của chương trình.
End Sub là câu lệnh kết thúc thủ tục.- Câu lệnh Console.WriteLine()
Câu lệnh này dùng để xuất chuỗi ra màn hình cụ thể là chuỗi "Hello, World".- Dấu nháy kép ("")
Chuỗi ký tự trong Visual Basic. NET được rào trong dấu nháy kép ("")- Câu lệnh Console.ReadLine()
Câu lệnh này dùng để đọc dữ liệu từ bàn phím
Câu lệnh này chờ khi bạn nhấn Enter để thoát khỏi màn hình Console (Màn hình của MS-DOS).- Các cú pháp khác:
Khai báo biến sử dụng hai từ khoá Dim và As sau đó là kiểu dữ liệu. Ví dụ:
Dim A As Integer
Trong đó:
Dim và As là từ khoá khai báo biến A và Integer (số tự nhiên) là kiểu dữ liệu.

**Ví dụ chương trình**
Chương trình tính diện tích chu vi hình chữ nhật:
Module Chunhat
Sub Main()
Console.Write("_ Nhập vào chiều dài hình chữ nhật: ")
Dim a As Decimal = Console.ReadLine() 'Decimal nghĩa là số thập phân
Console.Write("_ Nhập vào chiều rộng hình chữ nhật: ")
Dim b As Decimal = Console.ReadLine()

Dim KetQua1 As Decimal = (a+b)*2 'Có thể đặt tên biến là CV
WriteLine("_ Chu vi hình chữ nhật là: {0}",KetQua1)
Dim KetQua2 As Decimal = a*b 'Có thể đặt tên biến là DT       
WriteLine("_ Diện tích hình chữ nhật là: {0}",KetQua2)'{0} ở đây là chỗ chứa dữ liệu của biến khi xuất dữ liệu nếu không có nó dữ liệu sẽ không được xuất
End Sub
End Module

**Các phát triển của VB2005 so với VB6**

**1/ Tự động hoàn thành cấu trúc**
VB2005 có khả năng tự hoàn thành các cấu trúc như vòng lặp, rẽ nhánh. Ví dụ, bạn nhập:
For i = 0 to 10
Và nhấn Enter, VB2005 tự động trả về:
For i = 0 to 10

Next
Và đặt vị trí con trỏ ở giữa.

**2/ Gọi gián tiếp API và chuyển đổi kiểu dữ liệu**
- Trong VB2005, việc gọi API có thể nói là rất ít, vì VB2005 có nhiều hàm, thủ tục gọi gián tiếp. Ví dụ: Trong VB6, bạn cần gọi API ShellExecute để Windows chạy một tập tin bằng ứng dụng đúng thì với VB2005 thì chỉ cần gọi Process.Start
- Ngoài ra, kiểu dữ liệu trong VB2005 có thay đổi đôi chút, ví dụ kiểu Integer của VB2005 tương ứng với Long trong VB6.0, còn kiểu Long của VB2005 là kiểu Int64 có tới tối đa là hơn 9.000.000.000.000, vì vậy khả năng Overflow là rất thấp.

**3/ Tự động thụt vào đầu dòng**
Đây là chức năng rất hay của VB2005, nó giúp code gọn, dễ xem và bẫy lỗi.

**4/ Debug lỗi thông qua cửa sổ Watch**
Đây là chức năng giúp người dùng biết giá trị của biến mà không cần phải nhập ?  và nhấn Enter, rất thích hợp với các code dài.

**Tham khảo**
Thể loại:Ngôn ngữ lập trình
Thể loại:Phần mềm năm 2001
Thể loại:Ngôn ngữ lập trình.NET
Thể loại:Ngôn ngữ lập trình hướng đối tượng