• Thứ Tư, 20/09/2006 14:59 (GMT+7)

    Khác biệt giữa 3 ngôn ngữ lập trình C, C++ và C#

    Câu hỏi :
    Cho hỏi 3 ngôn ngữ lập trình C, C++ và C# khác nhau chỗ nào?
     

    Trả lời :

    Ở đây chúng tôi chỉ trình bày các điểm khác biệt chính giữa 3 ngôn ngữ lập trình C, C++ và C#:
     - C là ngôn ngữ lập trình cấu trúc, nó cho phép tạo 1 ứng dụng gồm nhiều module chức năng (file), mỗi module chứa nhiều hàm chức năng, các hàm này có thể bị bao đóng trong module chứa chúng hay có thể được truy xuất bởi bất kỳ nơi nào khác ngoài module chứa nó. C là ngôn ngữ không được kiểm tra kiểu chặt, nghĩa là chương trình dịch không có khả năng và không bao giờ kiểm tra kiểu, bạn có thể gán chuỗi vào biến nguyên... Tóm lại, C là ngôn ngữ thích hợp với những lập trình viên chuyên nghiệp, họ sẽ tự quyết định sự đúng đắn về đoạn code mà họ viết ra.

     - C++ là sự nới rộng của C, nó cung cấp thêm một số khả năng để cho phép lập trình hướng đối tượng. Ứng dụng được viết theo hướng đối tượng là 1 tập các đối tượng tương tác lẫn nhau, C++ cung cấp phát biểu "class" để người lập trình đặc tả các đối tượng cấu thành ứng dụng. Tuy nhiên, mức độ hỗ trợ hướng đối tượng của C++ còn yếu, không trong sáng và dễ làm người lập trình mắc lỗi trong quá trình viết code. Tóm lại, C++ thích hợp cho những người đã quen dùng C hay những người chỉ biết lập trình hướng đối tượng hay những người muốn kết hợp 2 trường phái lập trình cấu trúc và hướng đối tượng.

     - C# do Microsoft đề ra là ngôn ngữ hướng đối tượng rất thuần nhất và trong sáng, nó hiện thực hầu hết các tính chất tốt của mô hình hướng đối tượng giống như Java. Ngoài ra C# sẽ được dịch ra mã máy để chạy trên nền .Net, nền này cung cấp rất nhiều đối tượng mạnh, phong phú và đa dạng để giải quyết nhiều vấn đề phổ biến trong lập trình, nhờ đó nếu bạn lập trình bằng C#, bạn tốn rất ít chi phí, thời gian, ứng dụng kết quả chạy rất tin cậy, một phần do tính chất hướng đối tượng của C#, phần khác vì ứng dụng dùng chủ yếu các đối tượng đã được viết sẵn bởi Microsoft hay hãng thứ ba nào đó. Tuy nhiên C# hiện chỉ chạy trên nền .Net mà nền .Net hiện chỉ chạy trên HĐH Windows (có thể trong tương lai nó sẽ chạy trên Linux và MacOS).
     

    Chuyên mục: Lập trình