Chapter 3 uiserver의 작성방식

샤이니의 uiserver는 코드를 작성 하는 방식에 차이가 있습니다. ui는 함수가 중첩되는 형태로 코딩이 됩니다. 이는 샤이니 애플리케이션의 UI가 결국 웹의 언어인 html의 형식으로 변환되어 출력되기 때문에 html의 문법을 닮은 모양을 갖는 것입니다.

ui <- fluidPage(
  titlePanel("hello world!"),
  textInput("id", "textInput_example:", "hello!"),
  plotOutput("plot1"),
  tableOutput("table1")
)

server 함수는 ui 함수들과 달리 R의 코딩 패턴을 따릅니다. 한마디로 ui는 콤마(,)로 함수들이 이어져 있지만 server는 객체나 함수를 구분하는 데 콤마를 사용하지 않습니다.

server <- function(input, output, session) {
  
  output$plot1 <- renderPlot({
    plot(iris$Sepal.Length, iris$Sepal.Width)
  })
  
  output$table1 <- renderTable(iris)
}

이제 server에 대한 생각은 잠시 잊으셔도 좋습니다. 다음 챕터에서는 ui에서 일어나고 있는 일들에 대해 알아보도록 하겠습니다.