옵저버 vs 리액티브

R로 Shiny 웹 애플리케이션 만들기

Ramnath Vaidyanathan

VP of Product Research

리액티브 흐름

Shiny 앱의 리액티브 흐름을 보여주는 다이어그램

R로 Shiny 웹 애플리케이션 만들기

옵저버 (1/2)

사용자가 이름을 입력하면 모달 대화상자에 개인화된 인사가 표시되는 앱

R로 Shiny 웹 애플리케이션 만들기

옵저버 (2/2)

ui <- fluidPage(
  textInput('name', 'Enter your name')
)

server <- function(input, output, session){
  observe({
    showNotification(
      paste("You entered the name", input$name)
    )
  })
}
R로 Shiny 웹 애플리케이션 만들기

옵저버 vs 리액티브

역할

  • reactive()는 부작용 없이 값을 계산합니다.
  • observe()는 부작용이 있는 동작을 수행합니다.

차이점

  • 반환값: 리액티브 표현식은 값을 반환하지만, 옵저버는 반환하지 않습니다.
  • 평가: 옵저버는 의존성 변경에 즉시 반응하고, 리액티브 표현식은 지연 평가됩니다.
  • 부작용: 옵저버는 부작용이 핵심 용도이며, 리액티브 표현식은 부작용이 없어야 합니다.
R로 Shiny 웹 애플리케이션 만들기

연습해 봅시다!

R로 Shiny 웹 애플리케이션 만들기

Preparing Video For Download...