Type Checking Là gì?
Hãy cùng tìm hiểu ý nghĩa Type Checking, định nghĩa trong tiền điện tử, type Checking Là gì, và tất cả các thông tin chi tiết khác.
Kiểm tra kiểu (Tiếng anh: Type Checking) là một quá trình thiết lập xem hoạt động của chương trình có tuân thủ các quy tắc khai báo kiểu của ngôn ngữ lập trình hay không.
Trong hầu hết các trường hợp, việc kiểm tra kiểu được thực hiện bởi trình biên dịch. Trình biên dịch này có thể kiểm tra và xác minh xem tất cả các hoạt động có giữ số lượng đối số và kiểu dữ liệu được xác định trước hay không.
Kiểm tra kiểu được phân loại thành hai hệ thống: tĩnh và động.
Kiểm tra kiểu tĩnh
Kiểm tra kiểu tĩnh mang lại độ tin cậy, bảo mật, và tiết kiệm thời gian vì nó loại bỏ yêu cầu chạy chương trình của bạn khi kiểm tra kiểu.
Ưu điểm chính của danh mục này bao gồm phát hiện lỗi sơ bộ. Nó có nghĩa là bạn không phải chạy chương trình của mình để phát hiện các lỗi đã nói. Tất cả mọi thứ được thực hiện trước.
Trình biên dịch bắt đầu quá trình kiểm tra kiểu, quá trình này được thực hiện tại thời điểm biên dịch.
Hãy lấy ngôn ngữ lập trình C làm ví dụ. Trong trường hợp này, bạn có thể chạy chương trình của mình mà không cần khai báo các biến bên trong nó. Tuy nhiên, vì bạn không phải khai báo các biến nên trình biên dịch sẽ không thể hoàn tất quá trình và sẽ hiển thị thông báo lỗi. Đổi lại, chương trình của bạn sẽ ở trạng thái tĩnh.
Kiểm tra kiểu động
Kiểm tra kiểu động chỉ bắt đầu ở thời gian chạy hoặc thời gian thực thi. Do đó, nó khác với việc kiểm tra kiểu tĩnh xảy ra tại thời điểm biên dịch.
Bạn có thể viết chương trình mà không phải lo lắng về việc có bất kỳ kiến thức quan trọng nào về các loại.
Chúng ta hãy xem xét một trong các hình thức của quy trình kiểm tra kiểu:
- Mỗi biến, tham số và hàm được gán một kiểu dữ liệu;
- Các kiểu dữ liệu xác định loại hoạt động nào có thể được thực thi;
- Kiểm tra kiểu xem các thao tác có đúng không.
Không giống như kiểm tra kiểu tĩnh, trong đó kiểm tra kiểu luôn được trình biên dịch thực hiện, quá trình kiểm tra kiểu động thay đổi tùy theo ngôn ngữ lập trình. Chẳng hạn, ngôn ngữ lập trình PHP không yêu cầu trình biên dịch, trong khi ngôn ngữ lập trình C thì có.
Ngoài ra, có những ngôn ngữ lập trình mà các lập trình viên được cung cấp khả năng nhận các giá trị trong thời gian chạy và liên kết chúng với các thuộc tính tùy ý. Hoặc, nếu ngôn ngữ lập trình cho phép, người lập trình có thể định nghĩa các kiểu mới sẽ được sử dụng trong thuật toán chương trình của họ.