Tôi phát triển trong Visual Basic .Net từ năm 2001 và tôi yêu nó và tôi ghét nó !!!
Thứ tự trình bày những điểm này chỉ dựa trên thứ tự mà anh ấy nghĩ đến ...
Trong vb.net với visual studio, có một ngắt dòng trực quan giữa mỗi phương thức, thuộc tính. Đối với nhiều người, đó không phải là lý do chính đáng để thích vb.net hơn c # nhưng tôi không hiểu tại sao nhóm c # tại Microsoft không triển khai nó. Có một bổ trợ vẽ đường này trong c # nhưng một lần nữa Microsoft lại có nhóm ac # và nhóm cơ bản trực quan không nói chuyện với nhau.
Trong vb.net, khi bạn tạo một winform, bạn có hai combobox trong studio trực quan ở đầu trình chỉnh sửa và bạn có thể tự động tạo sự kiện khi chọn một sự kiện trên combobox bên phải. Khi bạn đính kèm hàng tá sự kiện mỗi ngày, sẽ rất khó để không có tính năng này. Với c #, bạn có một nút nhỏ ở đầu lưới thuộc tính có thể tạo sự kiện nhưng nó không nhanh như trong vb.net. Hơn nữa, nếu bạn đính kèm sự kiện kiểm soát trong c # và xóa điều khiển trên biểu mẫu, đại biểu được tạo trên mã được tạo tự động để xử lý sự kiện phải được xóa theo cách thủ công. Cảm ơn bạn một lần nữa Microsoft.
Trong vb.net, khi bạn cố gắng sửa đổi một phương thức có chứa truy vấn linq mà không sửa đổi chính truy vấn đó, không có vấn đề gì nhưng trong c #, tất cả mã phương thức đều bị khóa. Nếu bạn có nhiều truy vấn linq hoặc biểu thức lambda, tính năng chỉnh sửa và tiếp tục sẽ nhanh chóng trở thành một thứ tốt. Ok, một chút cường điệu ... nhưng :)
Trong vb.net, khi bạn tạo tên phương thức và nhấn enter, 'end sub' sẽ được tạo tự động. Trong c #, hãy tự làm. Ok, nếu bạn đã cài đặt lại hoặc hủy cài đặt, nó sẽ tốt hơn nhưng tại sao tất cả các tính năng nhỏ nhưng tuyệt vời này không được triển khai trong c #.
Trong vb.net, khi bạn có lỗi trên mã của mình, các lỗi sẽ tự động được hiển thị và khi bạn sửa nó, các lỗi này sẽ được xóa khỏi ngăn xếp trong thời gian thực. Trong c #, bạn phải xây dựng dự án của mình để nhận ra rằng bạn đã sửa thành công hoặc không sửa các lỗi được chỉ định. Tại sao nhóm c # không đặt tùy chọn để xác minh lỗi thời gian thực như trong vb.net. Với giải pháp lớn, không có xác minh lỗi thời gian thực có thể là một tối ưu hóa hiệu suất rất tốt nhưng tôi thích thấy một đống lỗi không xuất hiện trong khi tôi sửa nó.
Giống như những người khác đã đề cập, tôi nghĩ rằng điều kiện vb.net dễ đọc hơn nếu ... cho dù, chọn trường hợp ... kết thúc chọn nhưng với khung vẽ tranh, hãy quên những gì tôi đã nói.
Với vb.net, có rất nhiều lỗi trong studio hình ảnh. Chỉ cần đề cập đến một trong studio hình ảnh 2010, các intellisens không lọc liệt kê chính xác nếu bạn có chế độ "chung" được kích hoạt thay vì "tất cả".
Với vb.net, bạn được coi là một anh chàng ngốc bởi vì về mặt tĩnh, nhiều lập trình viên xấu hơn sử dụng vb.net thay vì c # vì c # khó học hơn và thúc đẩy thực hành lập trình tốt hơn.
Giống như những người khác đã nói, lập trình viên c # có cơ hội tốt hơn để có một công việc tốt với nhiều tiền hơn.
Trong đầu của khách hàng, vb.net = anh chàng lập trình trong tầng hầm của mình với một chuỗi spaghetti mã. c # = wow, bạn rất thông minh. Thực tế là không phải vì bạn lập trình trong c #, mà bạn tạo ra một chương trình tốt mà là tĩnh, đúng vậy.
Với tất cả những điểm này, tôi đã chọn chuyển đổi tất cả mã vb của mình trong c #. Tôi lập trình với tất cả các thực tiễn tốt nhất về hướng đối tượng, mẫu thiết kế, mã sạch với các tiêu chuẩn và cú pháp chặt chẽ và tôi có thể lập trình như vậy trong 50 năm nhưng từ con mắt của cộng đồng, tôi không phải là một lập trình viên giỏi. Tôi sẽ chuyển đổi mã của mình trong c # mà không có thực tiễn tốt nhất nào khác và tôi sẽ là một người khác; một anh chàng tuyệt vời mà bạn phải tôn trọng ..... :( thật là một trò đùa ... !!! nhưng đó là thực tế.