-->

Whether to write in “ui.R + server.R” or “app.R”

2019-02-17 06:50发布

问题:

We can write our Shiny code in two separate files, "ui.R" and "server.R", alternatively we can write both the modules in a single file "app.R" and call the function shinyApp()

Is there any benefit regarding performance with either of the two approaches or we should choose one based on whether we want concise code or differentiated one?

回答1:

I think that app.R is better, but it's better to include your source files as the UI and server respectively, with source("file.R", local=TRUE). This way, you can separate the app into more than just 2 files while having an "overall" view of the app through the main file, like a main.cpp file in C++.



回答2:

They achieve the same thing. I usually like to write my real apps, that have lots of code and are complex, as two separate files to separate the logic and make it more maintainable. But when dealing with tiny apps for demo purposes or when posting an app to SO or anywhere else, i find it's morereproducible and easier to have one statement (the app.R) approach.

Personal preference, really.