Phân tích mã tĩnh cho R

Lập trình R theo hướng phòng thủ

Dr. Colin Gillespie

Jumping Rivers

Gói lintr

  • lintr là gói R cung cấp phân tích mã tĩnh cho R
    • Kiểm tra tuân thủ
      • quy tắc style
      • lỗi cú pháp
      • khả năng lỗi ngữ nghĩa

Tương tự như trình kiểm tra chính tả

Lập trình R theo hướng phòng thủ

Dùng lintr

Cách dùng lintr

  • Lưu mã vào tệp
  • Truyền mã vào hàm lint()
Lập trình R theo hướng phòng thủ

lintr hoạt động

Giả sử có đoạn mã sau

my_bad<-function(x, y) {
  x+y
}

được lưu trong tệp code.R.

  • Chạy lintr::lint("code.R") nêu bật hai vấn đề
Lập trình R theo hướng phòng thủ

Vấn đề 1

my_bad<-function(x,y) {
  x+y
}
r[[1]]
tmp.R:1:7: style: Put spaces around all infix operators.
my_bad<-function(x,y) {
     ~^~~
my_bad <- function()
Lập trình R theo hướng phòng thủ

Vấn đề 2

my_bad<-function(x,y) {
  x+y
}
r[[3]]
tmp.R:2:4: style: Put spaces around all infix operators.
  x+y
  ~^~
 x + y
Lập trình R theo hướng phòng thủ

Xem Lintr hoạt động

Lập trình R theo hướng phòng thủ

Preparing Video For Download...