Visual Basic .NET

(Đổi hướng từ Visual Basic 2005)

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.

Visual Basic.NET
Mẫu hìnhStructured, imperative, object-oriented, declarative, generic, reflectiveevent-driven
Thiết kế bởiMicrosoft
Nhà phát triểnMicrosoft
Xuất hiện lần đầu2001; 23 năm trước (2001)
Phiên bản ổn định
2019 (16.0) / 24 tháng 7 năm 2019; 5 năm trước (2019-07-24)
Kiểm tra kiểuStatic, both strong and weak,[1] both safe and unsafe,[1] nominative
Nền tảng.NET Framework, Mono, .NET Core 3[2]
Hệ điều hànhWindows, Android, BSD, iOS, Linux, macOS, SolarisUnix
Giấy phépRoslyn compiler: Apache License 2.0[3]
Phần mở rộng tên tập tin.vb
Trang mạngdocs.microsoft.com/dotnet/visual-basic/
Các bản triển khai lớn
.NET Framework SDK, Roslyn CompilerMono
Phương ngữ
Microsoft Visual Basic
Ảnh hưởng từ
Visual Basic
Ảnh hưởng tới
Small Basic

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ử

sửa

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#ASP.NET). Phiên bản mới nhất hiện nay là Visual Basic. NET 2015.

Cú pháp

sửa

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

sửa
  • 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()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á DimAs sau đó là kiểu dữ liệu. Ví dụ:
Dim A As Integer

Trong đó: DimAs 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

sửa
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

sửa

1/ Tự động hoàn thành cấu trúc

sửa

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

sửa

- 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

sửa

Đâ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

sửa

Đâ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 ?<tên biến> và nhấn Enter, rất thích hợp với các code dài.

Tham khảo

sửa
  1. ^ a b Lỗi chú thích: Thẻ <ref> sai; không có nội dung trong thẻ ref có tên option strict explicit
  2. ^ Dollard, Kathleen. “Visual Basic in.NET Core 3.0”. blogs.msdn.microsoft.com.
  3. ^ https://github.com/dotnet/roslyn/blob/1ff27b046b5c03abb38bfeda44eb82da0b8df9de/License.txt