Learn

The forum of documents and methods for studying - Lượm lặt kiến thức


    So sánh C# và VB.NET

    avatar
    congdantoancau

    Tổng số bài gửi : 633
    Tiền xu Ⓑ : 1732
    Được cảm ơn № : 27
    Ngày khởi sự Ngày khởi sự : 12/05/2014

    So sánh C# và VB.NET Empty So sánh C# và VB.NET

    Bài gửi by congdantoancau 14th September 2014, 23:38

    C# và VB.NET là hai ngôn ngữ đều dựa trên nền tảng .NET của Microsoft. Hai ngôn ngữ này lại khá khác nhau về cấu trúc, cách viết… Bài viết này giúp bạn có cái nhìn tổng quát hơn về .NET và chi tiết khác nhau của C# và VB.NET.
    C# và VB.NET là hai ngôn ngữ đều được Visual Studio(VS) của Microsoft hỗ trợ. Bạn có thể create một dự án C# và VB.NET trên VS nếu lúc cài đặt bạn chọn hỗ trợ hai ngôn ngữ này.
    Có thể nói một ứng dụng viết bằng C# thì có thể viết lại bằng VB.NET và ngược lại vì thực tế sau khi viết bằng ngôn ngữ bậc cao này, phần mềm của bạn sẽ được dịch về ngôn ngữ thấp hơn và cả C# và VB.NET đều cùng được .NET dịch về chung một ngôn ngữ Assembly.
    VS mặc định cấu hình một dự án C# và VB.NET làm cho người lập trình cảm thấy rằng lập trình bằng C# thì rắc rối và phức tạp hơn nhiều so với VB.NET. Nếu bạn không thay đổi những thông số mặc định của VS thì đúng là như vậy. Ép kiểu, biến dùng chung, … trong C# thường chuẩn tắc hơn VB.NET. Nếu viết C# thường mất công hơn so với VB.NET nhưng đảm bảo chính xác hơn (một số trường hợp hiếm gặp sự dễ dãi của VB.NET làm bạn gặp lỗi khó lường)
    C# là ngôn ngữ dựa trên C++, có nét giống với Java. Sử dụng các dấu ngoặc {} và ngoặc []. Còn VB.NET thì giống với Pascal, Ruby và giống với ngôn ngữ tự nhiên, thay vì sử dụng các dấu ngoặc {} thì VB.NET lại dùng xuống hàng ở mỗi câu lệnh và sự dụng ngoặc () thay cho [], Điều này làm cho người dùng VB.NET có thể lập trình nhanh hơn, nhìn giống tự nhiên và dễ hiểu, dễ nhìn hợn C#.
    VB.NET không sử dụng ngoặc {} nên phải có nhiều từ khóa hơn, khó nhớ hơn đây là một điểm yếu của VB.NET. Một số cách viết của VB.NET thường dễ dãi không cần nhiều dấu . để gọi thuộc tính hay phương thức, không cần cặp ngoặc () để phần biện thục tục, hàm hay biến. Đặc biệt với các câu truy vấn LINQ của VB.NET thường ngắn và dễ viết hơn so với C# trong các mệnh đề groupby.
    VB.NET có từ khóa WITH và END WITH, C# không có. C# có tiền tố out cho biến VB.NET không có… Khá nhiều những điểm có và không có của C# và VB.NET cần lưu ý. Nhưng hầu hết đều có nhiều sự lựa chọn thay thế, cách code thay thế cho những thiết sót này.
    Về cộng đồng và thị trường lập trình thì C# đông đảo người dùng hơn so với VB.NET vì nó dựa trên những ngôn ngữ nổi tiếng C, C++, Java. Nhưng VB.NET vẫn gần gũi lập trình viên và một sự lựa chọn đúng cho những ai bắt đầu học lập trình và thích lập trình nhanh gọn.
    Lời khuyên về ngôn ngữ lập trình cho các lập trình viên là ngôn ngữ lập trình chỉ là cái áo mặc dài ngày và bạn có thể thay. Còn những cái cốt lõi như kỹ thuật lập trình, giải thuật, ý tưởng, thuật toán … mới là cái cốt lõi. Bạn có thể code cả ngôn ngữ này và ngôn ngữ kia trong trường hợp cần thiết. Lời khuyên là bạn nên nắm cái cốt lõi của lập trình và nên thành thạo một ngôn ngữ mình yêu thích và những ngôn ngữ kia vẫn code được.
    Liệt kê những điểm khác nhau cơ bản:

    • C# dùng dấu {}, VB.NET thì xuống dòng
    • C# khai báo thì kiểu dữ liệu nằm trước biến nằm sau. VB.NET thì ngược lại.
    • C# dùng [] để gọi phần tử. VB.NET thì dùng () để gọi phần tử.
    • C# có từ khóa out, VB.NET không có từ khóa nào có tính năng như vậy.
    • VB.NET có từ khóa with + endwith, C# không làm được điều này.
    • C# ép kiểu rõ ràng, VB.NET ép kiểu ngầm (VS mặc định mà ra)
    • C# so sánh bằng dùng toán tử  == . VB.NET phép gán và phép so sánh là một toán tử =
    • C# dùng các toàn tử logic dạng ký hiệu: &, |, ||, ! …. VB.NET dùng dạng từ AND, NOT, OR, …



    phanmemtheoyeucau.com


      Hôm nay: 22nd November 2024, 15:11