4. Trình dịch (tiếp tục)
Điển hình thì, một lập trình viên phát triển logic, viết code và dịch chương trình nhận một danh sách
lỗi cú pháp. Lập trình viên sau đó sửa lỗi cú pháp và dịch chương trình lại một lần nữa. Sửa tập hợp đầu
tiên của các lỗi thường bộc lộ lỗi mới cái ban đầu không rõ ràng đối với trình dịch. Ví dụ, nếu bạn sử
dụng trình dịch tiếng Anh và đệ trình câu “The dg chase the cat“, trình dịch trước tiên có
thể chỉ ra một lỗi cú pháp. Từ thứ hai dg, là bất hợp pháp vì nó không phải là phần của tiếng Anh. Chỉ
sau khi bạn sửa từ thành dog, trình dịch sẽ tìm thấy lỗi cú pháp khác trên từ thứ ba chase vì nó là dạng
động từ sai cho chủ ngữ dog. Cái này không có nghĩa chase nhất thiết là từ sai. Có thể dog là sai, có thể
chủ ngữ phải là dogs, trong trường hợp này chase là đúng. Trình dịch không luôn biết chính xác ý định của bạn.
Chúng cũng không biết sửa lỗi đúng là gì, nhưng chúng biết khi cái gì đó là sai với cú pháp của bạn.
Lập trình viên thường dịch code của họ một khu vực một lần. Nó sẽ ít quá tải hơn và dễ dàng hơn để hiểu các lỗi
cái được khám phá trong mỗi 20 dòng code một lúc hơn là cố gắng sửa các lỗi sau 200 dòng code đã được viết.
Khi viết một chương trình, một lập trình viên có thể cần dịch lại code một vài lần. Một chương trình thực thi
được chỉ khi code được giải phóng khỏi các lỗi cú pháp. Sau khi một chương trình đã được dịch thành ngôn ngữ máy
,chương trình ngôn ngữ máy được lưu lại và có thể được chạy với bất cứ số lần nào mà không lặp lại bước dịch.
Bạn chỉ cần dịch lại code của bạn nếu bạn thực hiện thay đổi đối với các phát biểu source code của bạn.
Ảnh dưới thể hiện một hình hoạ của toàn bộ quá trình: