| Mẫu hình | Structured, imperative, object-oriented, declarative, generic, reflective và event-driven |
|---|---|
| Thiết kế bởi | Microsoft |
| Nhà phát triển | Microsoft |
| Xuất hiện lần đầu | 2001; 24 năm trước |
| Phiên bản ổn định | 2019 (16.0)
/ 24 tháng 7 năm 2019; 5 năm trước |
| Kiểm tra kiểu | Static, both strong and weak, both safe and unsafe, nominative |
| Nền tảng | .NET Framework, Mono, .NET Core 3 |
| Hệ điều hành | Windows, Android, BSD, iOS, Linux, macOS, Solaris và Unix |
| Giấy phép | Roslyn compiler: Apache License 2.0 |
| Phần mở rộng tên tập tin | .vb |
| Trang mạng | docs |
| Các bản triển khai lớn | |
| .NET Framework SDK, Roslyn Compiler và Mono | |
| Phương ngữ | |
| Microsoft Visual Basic | |
| Ảnh hưởng từ | |
| Visual Basic | |
| Ảnh hưởng tới | |
| Small Basic | |
Visual Basic.NET là một ngôn ngữ lập trình mạnh mẽ, được tích hợp sẵn trong môi trường phát triển Microsoft Visual Studio 2005. Nó cho phép kết hợp linh hoạt với các dự án sử dụng ngôn ngữ khác như C# hay J#, giúp tăng hiệu quả trong quá trình xây dựng phần mềm.
VB2005 hoạt động dựa trên nền tảng .NET Framework 2.0, yêu cầu cài đặt framework này để chương trình có thể vận hành. Khác biệt so với VB 6.0, VB2005 được thiết kế hoàn toàn theo hướng đối tượng, mang lại khả năng mở rộng và bảo trì tốt hơn.
Lịch sử
VB.NET, tên đầy đủ là Microsoft Visual Basic .NET, được Microsoft nghiên cứu và phát triển từ những năm 1990, chính thức ra mắt vào năm 2002 cùng với Visual C# và ASP.NET. Tính đến nay, phiên bản mới nhất của nó là Visual Basic .NET 2015, tiếp tục khẳng định vị thế trong cộng đồng lập trình.
Cú pháp
Tương tự như ngôn ngữ Visual Basic truyền thống, VB.NET sử dụng dấu nháy đơn (') để ghi chú, dấu hai chấm (:) phân tách các lệnh cùng dòng, và dấu gạch dưới (_) giúp xuống dòng khi câu lệnh quá dài.
Dưới đây là ví dụ minh họa chương trình "Hello, World" viết bằng Visual Basic.NET:
Module HelloWorld Sub Main() Console.WriteLine("Hello, World") Console.ReadLine() End Sub End Module
Đây là mẫu chương trình kinh điển nhưng thể hiện đầy đủ các yếu tố cú pháp cơ bản thường được sử dụng trong lập trình.
Màn hình sẽ hiển thị output theo dạng sau đây:
Hello, World
Những dòng code được viết trong phần thân chính của chương trình
- Cặp từ khóa xác định phạm vi Module và End Module
- Trong VB, Module đại diện cho một đơn vị code độc lập, nơi một chương trình có thể chứa nhiều Module. Điểm khác biệt chính so với Pascal hay các ngôn ngữ như C/C++, J#, Java là VB sử dụng End Module để đánh dấu kết thúc mà không cần dấu chấm phẩy, đồng thời yêu cầu mỗi lệnh phải nằm trên dòng riêng.
- Cặp lệnh xác định thủ tục Sub và End Sub
- Một chương trình có thể bao gồm nhiều thủ tục (Sub), trong đó thủ tục chính chứa hàm khởi chạy Main() được khai báo dưới dạng Sub Main(). Đây là điểm bắt buộc phải có trong mọi chương trình VB.NET, nếu thiếu hàm Main() thì chương trình sẽ không thể thực thi được. Có thể xem hàm Main() như là cổng vào của toàn bộ ứng dụng.
- Lệnh End Sub đánh dấu điểm kết thúc của một thủ tục.
- Phương thức Console.WriteLine()
- Phương thức này có chức năng in nội dung ra màn hình console, trong trường hợp này là in ra dòng chữ "Hello, World".
- Ký tự dấu ngoặc kép ("")
- Trong VB.NET, mọi chuỗi ký tự đều phải được đặt giữa cặp dấu ngoặc kép
- Phương thức Console.ReadLine()
- Chức năng chính của phương thức này là nhận dữ liệu đầu vào từ người dùng thông qua bàn phím
Phương thức sẽ giữ chương trình ở trạng thái chờ cho đến khi người dùng nhấn phím Enter, sau đó mới đóng cửa sổ Console (cửa sổ dòng lệnh tương tự MS-DOS)
- Những cấu trúc cú pháp bổ sung:
- Để khai báo biến trong VB.NET, cần sử dụng cặp từ khóa Dim và As kèm theo kiểu dữ liệu tương ứng. Minh họa:
Dim BienSo As Integer
Giải thích: Dim cùng As là các từ khóa dùng để khai báo biến, trong khi Integer (kiểu số nguyên) xác định kiểu dữ liệu cho biến.
Mẫu code minh họa
- Ứng dụng tính toán chu vi và diện tích hình chữ nhật
Module HinhChuNhat Sub Main() Console.Write("_ Nhập chiều dài của hình chữ nhật: ") Dim chieuDai As Decimal = Console.ReadLine() 'Kiểu Decimal dùng cho số thập phân Console.Write("_ Nhập chiều rộng của hình chữ nhật: ") Dim chieuRong As Decimal = Console.ReadLine() Dim chuVi As Decimal = (chieuDai+chieuRong)*2 'Tính toán chu vi WriteLine("_ Chu vi hình chữ nhật là: {0}",chuVi) Dim dienTich As Decimal = chieuDai*chieuRong 'Tính diện tích WriteLine("_ Diện tích hình chữ nhật là: {0}",dienTich)'Placeholder {0} sẽ thay thế bằng giá trị biến khi xuất kết quả End Sub End Module
Những cải tiến của VB2005 so với phiên bản VB6
1/ Tính năng tự động hoàn thiện cú pháp
VB2005 được trang bị khả năng tự động điền các cấu trúc lệnh phức tạp như vòng lặp hay câu lệnh điều kiện. Chẳng hạn, khi người dùng bắt đầu nhập:
For j = 1 To 10
Sau khi nhấn phím Enter, VB2005 sẽ tự động sinh ra đoạn code hoàn chỉnh:
For j = 1 To 10 Next
Con trỏ sẽ tự động được đặt ở vị trí thích hợp để nhập code.
2/ Hỗ trợ gọi API gián tiếp và chuyển đổi kiểu dữ liệu tự động
- VB2005 giảm đáng kể việc gọi API trực tiếp nhờ tích hợp sẵn nhiều hàm hỗ trợ. Chẳng hạn, thay vì dùng ShellExecute như VB6 để mở file, VB2005 chỉ cần Process.Start - Hệ thống kiểu dữ liệu được nâng cấp: Integer trong VB2005 tương đương Long của VB6, còn Long trong VB2005 là Int64 với giá trị tối đa ~9.2 tỷ tỷ, gần như loại bỏ nguy cơ tràn số
3/ Tự động căn lề code
Tính năng này giúp mã nguồn được trình bày khoa học, dễ theo dõi và phát hiện lỗi
4/ Theo dõi biến với cửa sổ Watch
Cho phép xem giá trị biến tức thời mà không cần thao tác thủ công, đặc biệt hữu ích khi debug chương trình phức tạp
Các biến thể của ngôn ngữ lập trình BASIC | |
|---|---|
| Cổ điển |
|
| Hướng thủ tục |
|
| Với mở rộng đối tượng |
|
| Cho thiết bị di động |
|
| Microsoft |
|
| Phần mềm của hãng thứ 3 mô phỏng VB |
|
