Câu hỏi phỏng vấn Ruby
Câu hỏi

Sự khác biệt giữa Kernel#requireKernel#load là gì?

Câu trả lời

Trong Ruby, Kernel#requireKernel#load đều là phương thức để nạp các file mã nguồn Ruby, nhưng chúng có một số sự khác biệt quan trọng:

Sử dụng Kernel#require

  • require được sử dụng để nạp một file chỉ một lần. Ruby sẽ theo dõi các file đã được nạp thông qua require và không nạp lại file đó nếu phương thức được gọi lại với cùng một đường dẫn.
  • require tìm file dựa trên đường dẫn trong biến môi trường $LOAD_PATH hoặc đường dẫn tuyệt đối. Nếu không tìm thấy file trong $LOAD_PATH, bạn cần cung cấp đường dẫn tuyệt đối hoặc tương đối từ vị trí hiện tại của file đang được thực thi.
  • require thường được sử dụng để nạp các thư viện hoặc các file mã nguồn mà bạn không dự định sẽ thay đổi trong quá trình chạy chương trình.

Sử dụng Kernel#load

  • load sẽ nạp lại file mỗi lần nó được gọi, bất kể file đó đã được nạp trước đó hay chưa. Đ...
middle

middle

Gợi ý câu hỏi phỏng vấn

junior

Exception handling trong Ruby được thực hiện như thế nào?

junior

require và require_relative khác nhau ra sao?

middle

Giải thích quy trình request/response trong Rails

Bình luận

Chưa có bình luận nào

Chưa có bình luận nào