Swift:
การพิมพ์ผลลัพธ์การแก้ไขโค้ด

วิธีการ:

ใน Swift, คุณมีเพื่อนอยู่ในฟังก์ชัน print() ซึ่งใช้งานง่าย, มันช่วยให้คุณเห็นสิ่งที่กำลังเกิดขึ้นในโค้ดของคุณ

var greeting = "Hello, playground"
print(greeting)
// ผลลัพธ์: Hello, playground

let numbers = [1, 2, 3, 4, 5]
for number in numbers {
    print(number)
}
// ผลลัพธ์:
// 1
// 2
// 3
// 4
// 5

แต่รอซักครู่, ยังมีอีก! ต้องการข้อมูลดีบักโดยละเอียดหรือไม่? debugPrint() คอยให้บริการ:

debugPrint(greeting)
// ผลลัพธ์: "Hello, playground"

สังเกตเห็นเครื่องหมายอัญประกาศนั้นหรือไม่? debugPrint() เปิดเผยข้อมูลพิเศษเกี่ยวกับประเภทข้อมูลและโครงสร้าง

การศึกษาลึก

ในยุคของ Objective-C, เราใช้ NSLog เพื่อบันทึกสิ่งต่างๆ ออกมา Swift ทำให้สิ่งต่างๆ เรียบง่าย—print() เป็นขนมปังของคุณสำหรับผลลัพธ์มาตรฐาน, ในขณะที่ debugPrint() เป็นเนยรสชาติสำหรับมุมมองโดยละเอียด

ข้อเท็จจริงที่น่าสนใจ: ผลลัพธ์มาตรฐานใน Swift ไม่ได้เป็นเพียงแค่ข้อความ—มันสามารถเป็นประเภทใดๆ ที่สอดคล้องกับ CustomStringConvertible หรือ CustomDebugStringConvertible โปรโตคอลเหล่านี้ช่วยให้คุณปรับแต่งการดูของวัตถุของคุณเมื่อพวกเขาบอกเรื่องราวผ่านการพิมพ์

ภายใต้ฝาเครื่อง, print() และ debugPrint() ใช้ String(describing:) และ String(reflecting:) เพื่อเปลี่ยนวัตถุของคุณเป็นสตริง โดยพื้นฐานแล้ว, ฟังก์ชั่นเหล่านี้ใช้กระจกเพื่อถ่ายเซลฟี่ข้อมูลของคุณ

มีทางเลือกอื่นหรือไม่? คุณมี os_log และ NSLog, แต่เหล่านี้เหมาะสมกว่าสำหรับการบันทึกในระดับการผลิต, ไม่ใช่การดีบักแบบรวดเร็วและสกปรกที่เรากำลังพูดถึงที่นี่

ดูเพิ่มเติม