Ngôn ngữ kịch bản và ngôn ngữ lập trình khác nhau như thế nào?

Khi đọc khái niệm về PHP là gì thì em thấy tác giả có đề cập tới ngôn ngữ kịch bản (scripting language) và sau đó giải thích sự khác biệt giữa ngôn ngữ lập trình và ngôn ngữ kịch bản nhưng em chưa hiểu rõ hai ngôn ngữ này khác nhau ở điểm nào? Một ngôn ngữ kịch bản có phải là ngôn ngữ lập trình hay không và làm sao để phân biệt được ngôn ngữ kịch bản và ngôn ngữ lập trình?

2 Câu Trả Lời

Trung Quân Trung Quân

Ngôn ngữ kịch bản và ngôn ngữ lập trình khác nhau như thế nào?

Ngôn ngữ kịch bản cho phép máy tính chạy trực tiếp mã lệnh trong tập tin mà không cần phải biên dịch mã lệnh này sang một loại mã lệnh khác (và lưu ở một tập tin khác) trước khi có thể chạy.

Ví dụ với ngôn ngữ kịch bản là PHP sau khi viết mã lệnh và lưu vào trong một tập tin hello.php với nội dung như sau:

<?php echo "Hello PHP!"; ?>

Thì sau đó bạn có thể chạy trực tiếp mã lệnh PHP trong từ tập tin hello.php như sau:

$ php hello.php

Tuy nhiên với các ngôn ngữ lập trình như C thì quá trình thực thi chương trình sẽ đòi hỏi mã lệnh viết ra cần phải được biên soạn sang một loại mã khác để máy tính có thể hiểu.

Ví dụ một tập tin có tên là hello.c viết bằng ngôn ngữ C như sau:

#include <stdio.h>

void main()
{
    printf("Xin Chào Thế Giới!\n");
}

Thì máy tính không thể chạy trực tiếp tập tin trên mà cần một trình biên soạn để chuyển mã lệnh ở trên thành loại mã khác:

$ gcc hello.c

Sau câu lệnh trên trình biên soạn gcc sẽ tạo ra một tập tin với tên là hello.out và máy tính có thể thực thi trực tiếp mã lệnh trong tập tin này:

$ ./hello.out
Đạt Vũ Đạt Vũ

Mình nghĩ hiểu như thế này mới đúng: Các ngôn ngữ như C, Java, Python, PHP, Javascript... đều là những ngôn ngữ lập trình. Tuy nhiên, các ngôn ngữ như PHP, Javascript còn được gọi là ngôn ngữ kịch bản vì bạn có thể chạy trực tiếp mã lệnh từ file nguồn mà không cần biên soạn ra một loại mã khác.

Nội dung tối thiểu 100 ký tự

Câu Hỏi Liên Quan