Lua:
Sử dụng bộ gỡ lỗi

Làm thế nào:

Lua không đi kèm với debugger tích hợp sẵn, nhưng bạn có thể sử dụng các debugger bên ngoài, như ZeroBrane Studio. Dưới đây là một ví dụ về cách bạn làm việc với nó:

-- Đây là một script Lua đơn giản với một lỗi cố ý
local function add(a, b)
    local result = a+ b -- Ôi, hãy giả vờ chúng ta quên định nghĩa 'b'
    return result
end

print(add(10))

Khi bạn chạy điều này trong debugger, nó sẽ dừng thực thi ở nơi mọi thứ lộn xộn. Bạn sẽ nhìn thấy điều gì đó như thế này:

lua: example.lua:3: attempt to perform arithmetic on a nil value (local 'b')
stack traceback:
	example.lua:3: in function 'add'
	example.lua:7: in main chunk
	[C]: in ?

Bạn có thể đặt các điểm dừng, bước qua mã của mình, và xem giá trị của các biến để tìm ra lỗi mà không mất trí.

Sâu hơn

Sự đơn giản của Lua không mở rộng đến việc gỡ lỗi, rất tiếc. Tuy nhiên, không cần lo lắng, cộng đồng Lua đã hỗ trợ bạn. Các công cụ như ZeroBrane Studio, LuaDec, và những công cụ khác cung cấp khả năng gỡ lỗi. Về mặt lịch sử, debugger đã tồn tại không lâu sau khi các chương trình đầu tiên bị hỏng, cung cấp cho các nhà phát triển phương tiện để sửa chữa mã của họ mà không cần phải mù quáng mò mẫm.

Với Lua, bạn thường phải dựa vào các debugger bên ngoài hoặc tích hợp chúng vào môi trường phát triển của mình. ZeroBrane Studio, ví dụ, là một IDE tích hợp sẵn debugger Lua. Nó cho phép bạn bước qua mã, đặt điểm dừng và xem các biến. Về phần thực thi, debugger thường sử dụng các móc để chèn điểm dừng và các tiện ích gỡ lỗi khác.

Các phương pháp thay thế? Chắc chắn rồi. Câu lệnh print cũ, được biết đến với tình yêu “printf debugging,” đôi khi cũng có thể giải quyết vấn đề mà không cần đến những công cụ sang trọng.

Xem thêm

Để tiếp tục hành trình gỡ lỗi của bạn, hãy kiểm tra: