Trong bài học này, bạn sẽ khám phá cách sử dụng MyPy để kiểm tra loại trên mã Python của bạn. MyPy là công cụ phổ biến nhất để kiểm tra loại:Mypy to do type checking on your Python code. Mypy is the most common tool for doing type checking:Mypy to do type checking on your Python code. Mypy is the most common tool for doing type checking: Show
Nội dung chính
Mypy đã được bắt đầu bởi Jukka Lehtosalo trong quá trình tiến sĩ của mình. Các nghiên cứu tại Cambridge vào khoảng năm 2012. Ban đầu, MyPy bắt đầu như một biến thể độc lập của Python với sự động lực và gõ tĩnh liền mạch. Xem các slide Jukka từ Pycon Phần Lan 2012 để biết ví dụ về tầm nhìn ban đầu của Mypy. Theo đề xuất của Guido Van Rossum, Mypy đã được viết lại để sử dụng các chú thích thay thế, làm cho nó trở thành một trình kiểm tra loại tĩnh cho mã Python thông thường. Nếu bạn không có MyPy trên hệ thống của mình, bạn có thể cài đặt nó bằng PIP: Đặt mã sau vào một tệp có tên
Đây thực chất là cùng một mã bạn đã thấy trước đó: định nghĩa của Bây giờ hãy chạy MyPy trên mã này:
Dựa trên các gợi ý loại, MyPy có thể nói với bạn rằng bạn đang sử dụng sai loại trên dòng 10. Để khắc phục sự cố trong mã, bạn nên thay đổi giá trị của đối số
Ở đây bạn đã thay đổi Không có đầu ra từ MyPy có nghĩa là không phát hiện lỗi loại. Hơn nữa, khi bạn chạy mã, bạn sẽ thấy đầu ra dự kiến:
Tiêu đề đầu tiên được căn chỉnh bên trái, trong khi cái thứ hai được tập trung. Chào các bạn trở lại với series học 15 phút mỗi ngày cùng yeulaptrinh.vn, ở bài học này, chúng ta sẽ học về Type trong các ngôn ngữ lập trình, giải thích cho các bạn mới tiếp cận với data type, cũng như static type checking trong TypeScript . Chúng ta cùng bắt đầu nhé.học 15 phút mỗi ngày cùng yeulaptrinh.vn, ở bài học này, chúng ta sẽ học về Type trong các ngôn ngữ lập trình, giải thích cho các bạn mới tiếp cận với data type, cũng như static type checking trong TypeScript . Chúng ta cùng bắt đầu nhé.học 15 phút mỗi ngày cùng yeulaptrinh.vn, ở bài học này, chúng ta sẽ học về Type trong các ngôn ngữ lập trình, giải thích cho các bạn mới tiếp cận với data type, cũng như static type checking trong TypeScript . Chúng ta cùng bắt đầu nhé.học 15 phút mỗi ngày cùng yeulaptrinh.vn, ở bài học này, chúng ta sẽ học về Type trong các ngôn ngữ lập trình, giải thích cho các bạn mới tiếp cận với data type, cũng như static type checking trong TypeScript . Chúng ta cùng bắt đầu nhé. Nội dung chính
Nội dung chính
Nó không thể kiểm soát hay báo lỗi của data type trong quá trình runtime, ví dụ khi fetch data từ một API bên ngoài vào. Cái này sẽ liên quan đến phần Runtime Type Checking mình sẽ nói rõ ở những bài viết sau nhé.Runtime Type Checking mình sẽ nói rõ ở những bài viết sau nhé.
Type và tầm quan trọng của nó?Type là gì?Type quan trọng như thế nào?string là kiểu dữ liệu để phân loại văn bản hay boolean là kiểu dữ liệu dùng cho việc phân loại các logic.string là kiểu dữ liệu để phân loại văn bản hay boolean là kiểu dữ liệu dùng cho việc phân loại các logic. Type quan trọng như thế nào?Statically typed language và Dynamically typed language Statically typed language Dynamically typed languageyeulaptrinh.vn nhéyeulaptrinh.vn nhé Statically typed language và Dynamically typed languageStatically typed language statically typed language hoặc dynamically typed language Statically typed languageDynamically typed languageyeulaptrinh.vn nhé Statically typed language statically typedlanguage hoặc dynamically typedlanguagestatically typedlanguage hoặc dynamically typedlanguage Dynamically typed languageyeulaptrinh.vn nhéStatically typed language statically typedlanguage hoặc dynamically typedlanguagestatically typedlanguage hoặc dynamically typedlanguage Dynamically typed language Static Type-checking Statically typed language statically typedlanguage hoặc dynamically typedlanguagestatically typedlanguage hoặc dynamically typedlanguageDynamically typed language Static Type-checking Lợi ích của Static Type-checking Điểm hạn chế của Static Type-checkingstatic type-checking. Non-exception Failures & Types for Tooling khi chúng ta sử dụng một biến, nó sẽ hiểu được kiểu của biến dữ liệu của mình là gì => biết chúng có những thuộc tính nào, những phương thức nào => gợi ý các phương thức, thuộc tính liên quan và báo lỗi khi chúng ta sử dụng sai. Nội dung của bàistatic type-checking.static type-checking. Cách thức hoạt động: khi chúng ta sử dụng một biến, nó sẽ hiểu được kiểu của biến dữ liệu của mình là gì => biết chúng có những thuộc tính nào, những phương thức nào => gợi ý các phương thức, thuộc tính liên quan và báo lỗi khi chúng ta sử dụng sai. khi chúng ta sử dụng một biến, nó sẽ hiểu được kiểu của biến dữ liệu của mình là gì => biết chúng có những thuộc tính nào, những phương thức nào => gợi ý các phương thức, thuộc tính liên quan và báo lỗi khi chúng ta sử dụng sai. khi chúng ta sử dụng một biến, nó sẽ hiểu được kiểu của biến dữ liệu của mình là gì => biết chúng có những thuộc tính nào, những phương thức nào => gợi ý các phương thức, thuộc tính liên quan và báo lỗi khi chúng ta sử dụng sai. Để làm rõ hơn, chúng ta cùng vào một ví dụ cụ thể nhé.Chúng ta tạo một file rỗng từ visual studio code và chọn ngôn ngữChọn typescriptThành quả thu được như sau Bài viết trước mình đã hướng dẫn các bạn cách cài đặt môi trường cho TypeScript bằng Visual Studio, từ bài học này trở đi chúng ta sẽ sử dụng Visual Studio Code để thực hành nhé. Visual Studio Code mình đang sử dụng là Version: 1.58.2 (Universal) trên MacOSChúng ta tạo một file rỗng từ visual studio code và chọn ngôn ngữChúng ta tạo một file rỗng từ visual studio code và chọn ngôn ngữChọn typescriptThành quả thu được như sauChúng ta tạo một file rỗng từ visual studio code và chọn ngôn ngữChọn typescriptThành quả thu được như saugreeting như một hàm, thì nó đã báo lỗi ngay không cần phải chờ đến lúc compile code hay là runtime nữa. Dynamically typed language
Static Type-checking
Lợi ích của Static Type-checkingĐiểm hạn chế của Static Type-checking
Visual Studio Code mình đang sử dụng là Version: 1.58.2 (Universal) trên MacOSChúng ta tạo một file rỗng từ visual studio code và chọn ngôn ngữChúng ta tạo một file rỗng từ visual studio code và chọn ngôn ngữChọn typescriptThành quả thu được như sauChúng ta tạo một file rỗng từ visual studio code và chọn ngôn ngữChọn typescriptThành quả thu được như sau
Khi khai admin type là Human, thuộc tính city sẽ được suggest các giá trị phù hợp, tránh việc nhập sai
Nó không thể kiểm soát hay báo lỗi của data type trong quá trình runtime, ví dụ khi fetch data từ một API bên ngoài vào. Cái này sẽ liên quan đến phần Runtime Type Checking mình sẽ nói rõ ở những bài viết sau nhé.Runtime Type Checking mình sẽ nói rõ ở những bài viết sau nhé.Một số lỗi điển hình được kiểm soát như: Băt buộc phải trả đúng giá trị, nếu không thì sẽ thông báo lỗi Lỗi chính tả, đánh máy – tự động sửa tên hàm, tên field nếu gõ sai chính tả |