Swift:
In ra thông tin gỡ lỗi

Làm thế nào:

Trong Swift, bạn có một người bạn trong hàm print(). Dễ sử dụng, nó cho bạn cái nhìn về những gì đang diễn ra trong mã của bạn.

var greeting = "Hello, playground"
print(greeting)
// Đầu ra: Hello, playground

let numbers = [1, 2, 3, 4, 5]
for number in numbers {
    print(number)
}
// Đầu ra:
// 1
// 2
// 3
// 4
// 5

Nhưng chờ đã, còn nhiều hơn nữa! Cần thông tin gỡ lỗi chi tiết? debugPrint() sẽ giúp bạn:

debugPrint(greeting)
// Đầu ra: "Hello, playground"

Thấy những dấu ngoặc kép không? debugPrint() cung cấp thông tin thêm về các loại dữ liệu và cấu trúc.

Sâu hơn

Trong những ngày đầu của Objective-C, chúng tôi sử dụng NSLog để ghi nhật ký. Swift giữ mọi thứ đơn giản—print() là bánh mì và bơ của bạn cho đầu ra tiêu chuẩn, trong khi debugPrint() là bơ có hương vị cho các cái nhìn chi tiết.

Thông tin thú vị: Đầu ra tiêu chuẩn trong Swift không chỉ là văn bản—nó có thể là bất kỳ loại nào tuân theo CustomStringConvertible hoặc CustomDebugStringConvertible. Những giao thức này cho phép bạn tùy chỉnh cách các đối tượng của mình trông như thế nào khi chúng kể câu chuyện qua việc in.

Bên trong, print()debugPrint() sử dụng String(describing:)String(reflecting:) để biến đối tượng của bạn thành chuỗi. Cơ bản, những hàm này sử dụng một chiếc gương để chụp selfie dữ liệu của bạn.

Có phương án khác không? Bạn có os_logNSLog, nhưng những cái này phù hợp hơn cho việc ghi nhật ký ở cấp độ sản xuất, không phải quá trình gỡ lỗi nhanh gọn mà chúng ta đang đề cập ở đây.

Xem thêm